/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/assembly.scad
0,0 → 1,170
use <configuration/celicko.scad>
use <configuration/sloupek.scad>
use <configuration/lista.scad>
use <configuration/plbase.scad>
use <uravena_celicka.scad>
use <configuration/otvory.scad>
 
include <configuration/manufactury_conf.scad>
include <configuration.scad>
include <configuration/otvory_conf.scad>
 
 
barva_sloupku = "cyan";
barva_listy = "red";
barva_celicka = "green";
barva_plbase = "yellow";
 
//SLOUPKY
//------------------------------------------------------------
//sloupek 1
color(barva_sloupku)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 2
color(barva_sloupku)
translate([((pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[0,0,90])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 3
color(barva_sloupku)
translate([((pocet_der2+2)*vzdalenost_der)/2, (pocet_der1+2)*vzdalenost_der,0])
rotate(a=[0,0,180])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 4
color(barva_sloupku)
translate([-((pocet_der2+2)*vzdalenost_der)/2, (pocet_der1+2)*vzdalenost_der,0])
rotate(a=[0,0,270])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
 
//VELKE LISTY
//--------------------------------------------------------
//lista velka 1
color(barva_listy)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),-vyska/2])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 2
color(barva_listy)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),vyska/2])
rotate(a=[180,0,180])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 3
color(barva_listy)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),vyska/2])
rotate(a=[180,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 4
color(barva_listy)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),-vyska/2])
rotate(a=[0,0,180])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
 
 
//LISTY MALE
//---------------------------------------------------------
//lista mala 1
color(barva_listy)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),((pocet_der1+2)*vzdalenost_der)/2,-vyska/2])
rotate(a=[0,0,90])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 2
color(barva_listy)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),((pocet_der1+2)*vzdalenost_der)/2,vyska/2])
rotate(a=[0,180,90])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 3
color(barva_listy)
translate([-(((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)),((pocet_der1+2)*vzdalenost_der)/2,vyska/2])
rotate(a=[0,180,270])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 4
color(barva_listy)
translate([-(((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)),((pocet_der1+2)*vzdalenost_der)/2,-vyska/2])
rotate(a=[0,0,270])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//CELICKA
//--------------------------------------------------------
//celicko predni
 
color(barva_celicka)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),-(vyska-2*zapust-vule_vysky_celicka)/2])
celicko_predni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//celicko zadni
color(barva_celicka)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)+((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,180])
celicko_zadni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
///*
//celicko prave
color(barva_celicka)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)+((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),(pocet_der1+2)*vzdalenost_der/2,-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,90])
celicko_prave (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
//*/
//celicko leve
color(barva_celicka)
translate([-((pocet_der2+2)*vzdalenost_der)/2-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),(pocet_der1+2)*vzdalenost_der/2,-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,270])
celicko_leve (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//PLBASE SPODNI
//-------------------------------------------------------------
color(barva_plbase)
//základní plbase bez nožiček
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-(vyska/2)])
rotate(a=[180,0,90])
 
 
plbase(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
*/
 
//plbase s nožičkama
//*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-((vyska/2))])
rotate(a=[180,0,90])
plbase_s_nozickama(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy);
//*/
 
//plbase se zápustnými šrouby
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-(vyska/2)])
rotate(a=[180,0,90])
 
plbase_zapustene_srouby(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
*/
 
//PLBASE HORNI
//-------------------------------------------------------------
//základní plbase bez nožiček
///*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,2* vyska])
rotate(a=[0,0,0])
 
plbase(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
//
//plbase se zapuštěním šroubů
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,(vyska/2)])
rotate(a=[0,0,0])
 
plbase_zapustene_srouby(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
*/
 
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/configuration/celicko.scad
0,0 → 1,11
//Funkce generujici plne celicko
module celicko (vyska,zapust,vule_vysky_celicka,pocet_der,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy) {
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = vyska-2*zapust-vule_vysky_celicka)
square([(pocet_der-1)*vzdalenost_der-vule_delky_celicka, tloustka_celicka-vule_tlousky], center = true);
}
}
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/configuration/lista.scad
0,0 → 1,59
//Funkce generujici listu
module lista (vzdalenost_der,pocet_der,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tlouska_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu) {
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = zapust+vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust])
linear_extrude(height = vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true);
//otvory pro hlavy sroubu
//--------------------------------------------------------------
translate([vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),vyska_hlavy/2]) // center top screw
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
translate([-vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),vyska_hlavy/2]) // center top screw
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
//otvory pro srouby
//--------------------------------------------------------------
 
for (i = [0:1:pocet_der]) {
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true);
}
//otvory pro matice
//--------------------------------------------------------------
for (i = [1:1:(pocet_der-1)]) {
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje)-((((prumer_matice+posuv_dorazu+vzdalenost_od_diry)/2))-(prumer_matice+posuv_dorazu)/2)),matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
}
}
}
//lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/configuration/manufactury_conf.scad
0,0 → 1,41
$fn=20; // model faces resolution.
 
//Sloupek - vyrobni parametry
zapust=4.5; //zápust ve sloupku pro listu
tolerance=0.5; //tolerance mezi zapusti v sloupku a v listě
zapust1=zapust+tolerance;
 
//Sroub - parametry
vyska_hlavy = 3.5;
prumer_hlavy=6;
prumer_sroubu=3.3;
 
//Matice - parametry
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod maticí na ose z
 
 
//Lišta parametry
//---------------------------------------------------
//rozměry výrezu v ose y
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
 
//rozmery vyrezu v ose x
vzdalenost_1 = 4.6; //od díry ke kraji
vzdalenost_2 = 5;
 
vyska_listy=2; //definuje výšku žlábku do kterého se vsunuje čelíčko
 
//parametry pro úžlabinu
sirka_materialu = 2; //sirka materialu od kraje desky k uzlabine
 
 
//Celicko
//--------------------------------------------------
vule_vysky_celicka =0.5; //definuje vůli celicka v liste
vule_delky_celicka =0.1;
tloustka_celicka = 2;
vule_tlousky = 0.2;
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/configuration/otvory.scad
0,0 → 1,117
//Funkce otvuru pro ruzne prvky umistene do celicek
 
/*OBSAHUJE
1A) - LCD 2x16 - urceno pro montaz LCD 2x16 znaku
1B) - Pro modul RS232SINGLE01A
1C) - Pro modul USBI2C01A
1D) - Pro konektor MIC338
*/
 
 
//1A) - LCD 2x16
//--------------------------------------------------------
module otvor_LCD2_16_diry(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska)
{
//otvor na LCD
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2])
cube(size = [ramecek_x,tloustka_celicka,ramecek_y], center = true);
 
//diry na srouby pro LCD
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
}
module otvor_LCD2_16_sloupky(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska)
{
union() {
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
}
}
 
 
/*1B) - Pro modul RS232SINGLE01A
--------------------------------------------------------
--------------------------------------------------------
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
vzdalenost_der - definuje rozec der
 
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
 
*/
 
module RS232SINGLE01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
{
RS232SINGLE01A_sirka_kon=32; //sirka konektoru
RS232SINGLE01A_vyska_kon=13.5; //vyska konektoru
RS232SINGLE01A_sirka_mod_otvory=5; //kolik modul zabira der
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(RS232SINGLE01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,RS232SINGLE01A_vyska_kon/2+vyska_listy])
cube(size = [RS232SINGLE01A_sirka_kon,tloustka_celicka,RS232SINGLE01A_vyska_kon], center = true);
}
 
 
/*1C) - Pro modul USBI2C01A
--------------------------------------------------------
--------------------------------------------------------
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
vzdalenost_der - definuje rozec der
 
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
 
*/
 
module USBI2C01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
{
USBI2C01A_sirka_kon=13; //sirka konektoru
USBI2C01A_vyska_kon=12; //vyska konektoru
USBI2C01A_sirka_mod_otvory=3; //kolik modul zabira der
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(USBI2C01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,USBI2C01A_vyska_kon/2+vyska_listy])
cube(size = [USBI2C01A_sirka_kon,tloustka_celicka,USBI2C01A_vyska_kon], center = true);
}
 
/*1D) - Pro konektor MIC338
--------------------------------------------------------
--------------------------------------------------------
*/
 
module MIC338(tloustka_celicka,vyska,zapust,vule_vysky_celicka)
{
MIC338_polomer_kon=8; //polomer montazniho otvoru
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[90,0,0])
cylinder(h=tloustka_celicka+0.1, r=MIC338_polomer_kon+0.1, center=true);
}
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/configuration/otvory_conf.scad
0,0 → 1,16
//Konfigurace pro otvory
 
//1A) - LCD 2x16
//vzdalenost der
vzdalenost_der_x = 75;
vzdalenost_der_y = 31;
prumer_otvoru = 2.7;
prumer_sloupku = 5;
 
//ramecek LCD
ramecek_x = 72;
ramecek_y = 26;
 
//vyska ramecku LCD
ramecek_vyska = 5;
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/configuration/plbase.scad
0,0 → 1,125
/*
pocet_der1=5;
pocet_der2=3;
radidus_hrany=5;
vzdalenost_der=10.16;
vzdalenost_od_okraje=8.8;
prumer_sroubu=3.3;
 
tloustka_plbase=2;
prekryti_der=0.3;
 
vyska_nozicky=5;
 
vyska_hlavy = 3.5;
prumer_hlavy=6;
*/
 
//PLBASE ZAKLADNI
//------------------------------------------------------------
module plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der){
 
difference () {
//union () {
translate([radidus_hrany,radidus_hrany,0])
minkowski()
{
cube([(pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,(pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,tloustka_plbase]); // base plastics brick
cylinder(r=radidus_hrany,h=0.1);
}
 
for (i = [0:1:pocet_der1-1]) {
for (a = [0:1:pocet_der2-1]) {
translate([vzdalenost_od_okraje+vzdalenost_der*i,vzdalenost_od_okraje+vzdalenost_der*a, (tloustka_plbase-prekryti_der)/2]) // center top screw
cylinder(((tloustka_plbase-prekryti_der)), d=prumer_sroubu, center=true);
}
}
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
}
}
 
 
 
//MODEL NOZICKY PRO PLBASE
//-----------------------------------------------------------
//průmer nozicky je roven vzdalenost_der
module nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy)
{
difference () {
translate([0,0,-vyska_nozicky/2])
cylinder((vyska_nozicky), d=vzdalenost_der, center=true);
translate([0,0,-(vyska_nozicky-vyska_hlavy/2)])
cylinder((vyska_hlavy), d=prumer_hlavy, center=true);
translate([0,0,-vyska_nozicky/2])
cylinder((vyska_nozicky), d=prumer_sroubu, center=true);
}
}
 
 
 
//PLBASE S NOZICKAMA
//-----------------------------------------------------------
module plbase_s_nozickama(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){
plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, tloustka_plbase]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
}
 
//PLBASE SE ZAPUSTENIM SROUBU
//------------------------------------------------------
module plbase_zapustene_srouby(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy){
difference () {
plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,(vyska_hlavy+1.5),prekryti_der);
 
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
 
}
}
/*
plbase_zapustene_srouby(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
 
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/configuration/sloupek.scad
0,0 → 1,107
//Funkce pro generovani sloupku
module sloupek(
vyska,
zapust,
vzdalenost_der,
vzdalenost_od_okraje,
vzdalenost_od_diry,
radidus_hrany,
prumer_sroubu,
prumer_matice,
vyska_matice,
posuv_dorazu,
matice_sila_materialu) {
 
difference () {
union () {
color("green")
translate([-(vzdalenost_od_okraje-radidus_hrany),-(vzdalenost_od_okraje-radidus_hrany),0]) // center top screw
cylinder(vyska, d=(2*radidus_hrany), center=true);
 
color("cyan")
translate([vzdalenost_der/4, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_der/2], center = true);
 
color("gray")
translate([-vzdalenost_od_okraje/2, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([(vzdalenost_od_okraje), vzdalenost_der/2], center = true);
color("gray")
translate([vzdalenost_der/4, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_od_okraje], center = true);
color("red")
translate([-(vzdalenost_od_okraje-radidus_hrany)/2, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje-radidus_hrany, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,-(vzdalenost_od_okraje-radidus_hrany)/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje, vzdalenost_od_okraje-radidus_hrany], center = true);
 
color("green")
translate([vzdalenost_der, -vzdalenost_od_okraje/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([ vzdalenost_od_okraje,vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_od_diry/2, vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([(vzdalenost_od_diry), vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_der, vzdalenost_od_diry/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_diry ], center = true);
}
 
//diry na sroub
translate([0,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([vzdalenost_der,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([0,vzdalenost_der,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
//diry na matice
//1. krajni matice
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
 
//2. krajni matice
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
//prostredni dira
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
}
}
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/configuration.scad
0,0 → 1,29
//ALBASE1115
//------------------------------------------------------------
///*
vzdalenost_der = 10.16; //rozteč děr mezi sebou
radidus_hrany = 5; //radius zaobleni sloupku
 
//parametry lišty
vzdalenost_od_okraje = 8.88; //vzdalenost stredu upevnovaci diry od kraje desky
 
//mala hrana
pocet_der1 = 6; //pocet der desky, ponížené o 3
 
//velka hrana
pocet_der2 = 4; //pocet der desky, ponížené o 3
//*/
 
 
//OBECNE PARAMETRY KRABICKY
//------------------------------------------------------------
vyska = 40; //vyska celeho sloupku, pro zjisteni celkove vysky krabicky je potreba k teto vysce pricist tloustku 2xALBASE, nebo 2xPLBASE
 
//PLBASE PARAMETRY
//------------------------------------------------------------
tloustka_plbase = 2; //tloustka plbase
prekryti_der=0.3; //sila materiálu, který překrývá díry
 
//PRIPADNA VYSKA NOZICEK
//------------------------------------------------------------
vyska_nozicky=5;
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/print_data/TEFO01A_BOX01A_PLBASE_bottom.scad
0,0 → 1,16
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
//plbase s nožičkama
plbase_s_nozickama(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy);
 
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/print_data/TEFO01A_BOX01A_PLBASE_top.scad
0,0 → 1,11
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
plbase(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/print_data/TEFO01A_BOX01A_plate1.scad
0,0 → 1,42
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
 
banister_color = "cyan";
slat_color = "red";
 
/*
// box banisters
color(banister_color)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[90,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
*/
 
// box slats
color(slat_color)
translate([0,0,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,20,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,-20,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
color(slat_color)
translate([0,-40,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/print_data/TEFO01A_BOX01A_plate2.scad
0,0 → 1,38
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
 
banister_color = "cyan";
slat_color = "red";
 
/*
// box banisters
color(banister_color)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[90,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
*/
 
// box slats
color(slat_color)
translate([0,0,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,20,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,-20,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
color(slat_color)
translate([0,-40,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/print_data/TEFO01A_BOX01A_plate3.scad
0,0 → 1,29
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
barva_predni = "cyan";
barva_zadni = "red";
 
 
//celicko predni
//--------------------------------------------------------------
translate([0,-(10+vyska),0])
color(barva_predni)
rotate(a=[-90,0,0])
 
celicko_predni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//celicko zadni
//--------------------------------------------------------------
translate([0,(10+vyska),0])
color(barva_zadni)
rotate(a=[-90,0,180])
 
celicko_zadni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/print_data/TEFO01A_BOX01A_plate4.scad
0,0 → 1,31
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
barva_leve = "green";
barva_prave = "yellow";
 
 
//celicko prave
//-----------------------------------------------------------
color(barva_prave)
translate([vyska+10,0,0])
rotate(a=[-90,0,90])
 
celicko_prave (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
//*/
 
 
//celicko leve
//-----------------------------------------------------------
color(barva_leve)
translate([-(vyska+10),0,0])
rotate(a=[-90,0,270])
 
celicko_leve (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/CAD/uravena_celicka.scad
0,0 → 1,90
use <configuration/celicko.scad>
use <configuration/sloupek.scad>
use <configuration/lista.scad>
use <configuration/plbase.scad>
use <uravena_celicka.scad>
use <configuration/otvory.scad>
 
include <configuration/manufactury_conf.scad>
include <configuration.scad>
include <configuration/otvory_conf.scad>
 
//Slouzi pro vytvoreni vlastnich celicek dle potreby
 
//Vytvoreni predniho celicka krabicky
//--------------------------------------------------------
module celicko_predni()
difference() {
union() {
 
celicko (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska);
}
}
 
 
 
 
//Vytvoreni zadniho celicka krabicky
//--------------------------------------------------------
module celicko_zadni()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
}
}
 
 
//Vytvoreni leveho celicka krabicky
//--------------------------------------------------------
module celicko_leve()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
translate([10,0,0])
MIC338(tloustka_celicka,vyska,zapust,vule_vysky_celicka);
 
}
}
 
 
 
//Vytvoreni praveho celicka krabicky
//--------------------------------------------------------
module celicko_prave()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
 
}
}
barva_predni = "cyan";
barva_zadni = "red";
barva_leve = "green";
barva_prave = "yellow";
 
//Zobrazeni vzhledu navrhovanych celicek
color(barva_predni)
translate([0,-50,0])
celicko_predni();
 
color(barva_zadni)
translate([0,50,0])
rotate(a=[0,0,180])
celicko_zadni();
 
color(barva_leve)
translate([-60,0,0])
rotate(a=[0,0,270])
celicko_leve();
 
color(barva_prave)
translate([60,0,0])
rotate(a=[0,0,90])
celicko_prave();
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX01A/info.txt
0,0 → 1,2
Box vycházející z BASEBOX01A
-určen pro první část TEFO01A - HBSTEP01B, I2CSPI01A
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/assembly.scad
0,0 → 1,170
use <configuration/celicko.scad>
use <configuration/sloupek.scad>
use <configuration/lista.scad>
use <configuration/plbase.scad>
use <uravena_celicka.scad>
use <configuration/otvory.scad>
 
include <configuration/manufactury_conf.scad>
include <configuration.scad>
include <configuration/otvory_conf.scad>
 
 
barva_sloupku = "cyan";
barva_listy = "red";
barva_celicka = "green";
barva_plbase = "yellow";
 
//SLOUPKY
//------------------------------------------------------------
//sloupek 1
color(barva_sloupku)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 2
color(barva_sloupku)
translate([((pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[0,0,90])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 3
color(barva_sloupku)
translate([((pocet_der2+2)*vzdalenost_der)/2, (pocet_der1+2)*vzdalenost_der,0])
rotate(a=[0,0,180])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 4
color(barva_sloupku)
translate([-((pocet_der2+2)*vzdalenost_der)/2, (pocet_der1+2)*vzdalenost_der,0])
rotate(a=[0,0,270])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
 
//VELKE LISTY
//--------------------------------------------------------
//lista velka 1
color(barva_listy)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),-vyska/2])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 2
color(barva_listy)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),vyska/2])
rotate(a=[180,0,180])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 3
color(barva_listy)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),vyska/2])
rotate(a=[180,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 4
color(barva_listy)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),-vyska/2])
rotate(a=[0,0,180])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
 
 
//LISTY MALE
//---------------------------------------------------------
//lista mala 1
color(barva_listy)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),((pocet_der1+2)*vzdalenost_der)/2,-vyska/2])
rotate(a=[0,0,90])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 2
color(barva_listy)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),((pocet_der1+2)*vzdalenost_der)/2,vyska/2])
rotate(a=[0,180,90])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 3
color(barva_listy)
translate([-(((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)),((pocet_der1+2)*vzdalenost_der)/2,vyska/2])
rotate(a=[0,180,270])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 4
color(barva_listy)
translate([-(((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)),((pocet_der1+2)*vzdalenost_der)/2,-vyska/2])
rotate(a=[0,0,270])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//CELICKA
//--------------------------------------------------------
//celicko predni
 
color(barva_celicka)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),-(vyska-2*zapust-vule_vysky_celicka)/2])
celicko_predni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//celicko zadni
color(barva_celicka)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)+((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,180])
celicko_zadni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
///*
//celicko prave
color(barva_celicka)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)+((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),(pocet_der1+2)*vzdalenost_der/2,-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,90])
celicko_prave (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
//*/
//celicko leve
color(barva_celicka)
translate([-((pocet_der2+2)*vzdalenost_der)/2-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),(pocet_der1+2)*vzdalenost_der/2,-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,270])
celicko_leve (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//PLBASE SPODNI
//-------------------------------------------------------------
color(barva_plbase)
//základní plbase bez nožiček
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-(vyska/2)])
rotate(a=[180,0,90])
 
 
plbase(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
*/
 
//plbase s nožičkama
//*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-((vyska/2))])
rotate(a=[180,0,90])
plbase_s_nozickama(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy);
//*/
 
//plbase se zápustnými šrouby
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-(vyska/2)])
rotate(a=[180,0,90])
 
plbase_zapustene_srouby(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
*/
 
//PLBASE HORNI
//-------------------------------------------------------------
//základní plbase bez nožiček
///*
/*translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,2* vyska])
rotate(a=[0,0,0])
 
plbase(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
//*/
//plbase se zapuštěním šroubů
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,(vyska/2)])
rotate(a=[0,0,0])
 
plbase_zapustene_srouby(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
*/
 
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/configuration/celicko.scad
0,0 → 1,11
//Funkce generujici plne celicko
module celicko (vyska,zapust,vule_vysky_celicka,pocet_der,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy) {
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = vyska-2*zapust-vule_vysky_celicka)
square([(pocet_der-1)*vzdalenost_der-vule_delky_celicka, tloustka_celicka-vule_tlousky], center = true);
}
}
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/configuration/lista.scad
0,0 → 1,59
//Funkce generujici listu
module lista (vzdalenost_der,pocet_der,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tlouska_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu) {
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = zapust+vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust])
linear_extrude(height = vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true);
//otvory pro hlavy sroubu
//--------------------------------------------------------------
translate([vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),vyska_hlavy/2]) // center top screw
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
translate([-vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),vyska_hlavy/2]) // center top screw
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
//otvory pro srouby
//--------------------------------------------------------------
 
for (i = [0:1:pocet_der]) {
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true);
}
//otvory pro matice
//--------------------------------------------------------------
for (i = [1:1:(pocet_der-1)]) {
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje)-((((prumer_matice+posuv_dorazu+vzdalenost_od_diry)/2))-(prumer_matice+posuv_dorazu)/2)),matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
}
}
}
//lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/configuration/manufactury_conf.scad
0,0 → 1,41
$fn=20; // model faces resolution.
 
//Sloupek - vyrobni parametry
zapust=4.5; //zápust ve sloupku pro listu
tolerance=0.5; //tolerance mezi zapusti v sloupku a v listě
zapust1=zapust+tolerance;
 
//Sroub - parametry
vyska_hlavy = 3.5;
prumer_hlavy=6;
prumer_sroubu=3.3;
 
//Matice - parametry
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod maticí na ose z
 
 
//Lišta parametry
//---------------------------------------------------
//rozměry výrezu v ose y
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
 
//rozmery vyrezu v ose x
vzdalenost_1 = 4.6; //od díry ke kraji
vzdalenost_2 = 5;
 
vyska_listy=2; //definuje výšku žlábku do kterého se vsunuje čelíčko
 
//parametry pro úžlabinu
sirka_materialu = 2; //sirka materialu od kraje desky k uzlabine
 
 
//Celicko
//--------------------------------------------------
vule_vysky_celicka =0.5; //definuje vůli celicka v liste
vule_delky_celicka =0.1;
tloustka_celicka = 2;
vule_tlousky = 0.2;
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/configuration/otvory.scad
0,0 → 1,141
//Funkce otvuru pro ruzne prvky umistene do celicek
 
/*OBSAHUJE
1A) - LCD 2x16 - urceno pro montaz LCD 2x16 znaku
1B) - Pro modul RS232SINGLE01A
1C) - Pro modul USBI2C01A
1D) - Pro konektor MIC338
1E) - Pro modul UNIPOWER02A
*/
 
 
//1A) - LCD 2x16
//--------------------------------------------------------
module otvor_LCD2_16_diry(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska)
{
//otvor na LCD
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2])
cube(size = [ramecek_x,tloustka_celicka,ramecek_y], center = true);
 
//diry na srouby pro LCD
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
}
module otvor_LCD2_16_sloupky(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska)
{
union() {
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
}
}
 
 
/*1B) - Pro modul RS232SINGLE01A
--------------------------------------------------------
--------------------------------------------------------
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
vzdalenost_der - definuje rozec der
 
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
 
*/
 
module RS232SINGLE01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
{
RS232SINGLE01A_sirka_kon=32; //sirka konektoru
RS232SINGLE01A_vyska_kon=13.5; //vyska konektoru
RS232SINGLE01A_sirka_mod_otvory=5; //kolik modul zabira der
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(RS232SINGLE01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,RS232SINGLE01A_vyska_kon/2+vyska_listy])
cube(size = [RS232SINGLE01A_sirka_kon,tloustka_celicka,RS232SINGLE01A_vyska_kon], center = true);
}
 
 
/*1C) - Pro modul USBI2C01A
--------------------------------------------------------
--------------------------------------------------------
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
vzdalenost_der - definuje rozec der
 
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
 
*/
 
module USBI2C01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
{
USBI2C01A_sirka_kon=13; //sirka konektoru
USBI2C01A_vyska_kon=12; //vyska konektoru
USBI2C01A_sirka_mod_otvory=3; //kolik modul zabira der
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(USBI2C01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,USBI2C01A_vyska_kon/2+vyska_listy])
cube(size = [USBI2C01A_sirka_kon,tloustka_celicka,USBI2C01A_vyska_kon], center = true);
}
 
/*1D) - Pro konektor MIC338
--------------------------------------------------------
--------------------------------------------------------
*/
 
module MIC338(tloustka_celicka,vyska,zapust,vule_vysky_celicka)
{
MIC338_polomer_kon=8; //polomer montazniho otvoru
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[90,0,0])
cylinder(h=tloustka_celicka+0.1, r=MIC338_polomer_kon+0.1, center=true);
}
 
/*1D) - Pro modul UNIPOWER02A
--------------------------------------------------------
--------------------------------------------------------
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
vzdalenost_der - definuje rozec der
 
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
 
*/
 
module UNIPOWER02A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
{
UNIPOWER02A_sirka_kon=9; //sirka konektoru
UNIPOWER02A_vyska_kon=11; //vyska konektoru
UNIPOWER02A_sirka_mod_otvory=4; //kolik modul zabira der
UNIPOWER02A_vzdalenost_konektoru=6; //vzdalenost kraje konektoru od středu šroubu
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+posun_od_kraje*vzdalenost_der+UNIPOWER02A_vzdalenost_konektoru+UNIPOWER02A_sirka_kon/2,0,UNIPOWER02A_vyska_kon/2+vyska_listy])
cube(size = [UNIPOWER02A_sirka_kon,tloustka_celicka,UNIPOWER02A_vyska_kon], center = true);
}
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/configuration/otvory_conf.scad
0,0 → 1,16
//Konfigurace pro otvory
 
//1A) - LCD 2x16
//vzdalenost der
vzdalenost_der_x = 75;
vzdalenost_der_y = 31;
prumer_otvoru = 2.7;
prumer_sloupku = 5;
 
//ramecek LCD
ramecek_x = 72;
ramecek_y = 26;
 
//vyska ramecku LCD
ramecek_vyska = 5;
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/configuration/plbase.scad
0,0 → 1,125
/*
pocet_der1=5;
pocet_der2=3;
radidus_hrany=5;
vzdalenost_der=10.16;
vzdalenost_od_okraje=8.8;
prumer_sroubu=3.3;
 
tloustka_plbase=2;
prekryti_der=0.3;
 
vyska_nozicky=5;
 
vyska_hlavy = 3.5;
prumer_hlavy=6;
*/
 
//PLBASE ZAKLADNI
//------------------------------------------------------------
module plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der){
 
difference () {
//union () {
translate([radidus_hrany,radidus_hrany,0])
minkowski()
{
cube([(pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,(pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,tloustka_plbase]); // base plastics brick
cylinder(r=radidus_hrany,h=0.1);
}
 
for (i = [0:1:pocet_der1-1]) {
for (a = [0:1:pocet_der2-1]) {
translate([vzdalenost_od_okraje+vzdalenost_der*i,vzdalenost_od_okraje+vzdalenost_der*a, (tloustka_plbase-prekryti_der)/2]) // center top screw
cylinder(((tloustka_plbase-prekryti_der)), d=prumer_sroubu, center=true);
}
}
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
}
}
 
 
 
//MODEL NOZICKY PRO PLBASE
//-----------------------------------------------------------
//průmer nozicky je roven vzdalenost_der
module nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy)
{
difference () {
translate([0,0,-vyska_nozicky/2])
cylinder((vyska_nozicky), d=vzdalenost_der, center=true);
translate([0,0,-(vyska_nozicky-vyska_hlavy/2)])
cylinder((vyska_hlavy), d=prumer_hlavy, center=true);
translate([0,0,-vyska_nozicky/2])
cylinder((vyska_nozicky), d=prumer_sroubu, center=true);
}
}
 
 
 
//PLBASE S NOZICKAMA
//-----------------------------------------------------------
module plbase_s_nozickama(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){
plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, tloustka_plbase]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
}
 
//PLBASE SE ZAPUSTENIM SROUBU
//------------------------------------------------------
module plbase_zapustene_srouby(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy){
difference () {
plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,(vyska_hlavy+1.5),prekryti_der);
 
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
 
}
}
/*
plbase_zapustene_srouby(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
 
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/configuration/sloupek.scad
0,0 → 1,107
//Funkce pro generovani sloupku
module sloupek(
vyska,
zapust,
vzdalenost_der,
vzdalenost_od_okraje,
vzdalenost_od_diry,
radidus_hrany,
prumer_sroubu,
prumer_matice,
vyska_matice,
posuv_dorazu,
matice_sila_materialu) {
 
difference () {
union () {
color("green")
translate([-(vzdalenost_od_okraje-radidus_hrany),-(vzdalenost_od_okraje-radidus_hrany),0]) // center top screw
cylinder(vyska, d=(2*radidus_hrany), center=true);
 
color("cyan")
translate([vzdalenost_der/4, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_der/2], center = true);
 
color("gray")
translate([-vzdalenost_od_okraje/2, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([(vzdalenost_od_okraje), vzdalenost_der/2], center = true);
color("gray")
translate([vzdalenost_der/4, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_od_okraje], center = true);
color("red")
translate([-(vzdalenost_od_okraje-radidus_hrany)/2, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje-radidus_hrany, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,-(vzdalenost_od_okraje-radidus_hrany)/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje, vzdalenost_od_okraje-radidus_hrany], center = true);
 
color("green")
translate([vzdalenost_der, -vzdalenost_od_okraje/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([ vzdalenost_od_okraje,vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_od_diry/2, vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([(vzdalenost_od_diry), vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_der, vzdalenost_od_diry/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_diry ], center = true);
}
 
//diry na sroub
translate([0,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([vzdalenost_der,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([0,vzdalenost_der,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
//diry na matice
//1. krajni matice
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
 
//2. krajni matice
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
//prostredni dira
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
}
}
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/configuration.scad
0,0 → 1,29
//ALBASE1115
//------------------------------------------------------------
///*
vzdalenost_der = 10.16; //rozteč děr mezi sebou
radidus_hrany = 5; //radius zaobleni sloupku
 
//parametry lišty
vzdalenost_od_okraje = 8.88; //vzdalenost stredu upevnovaci diry od kraje desky
 
//mala hrana
pocet_der1 = 3; //pocet der desky, ponížené o 3
 
//velka hrana
pocet_der2 = 7; //pocet der desky, ponížené o 3
//*/
 
 
//OBECNE PARAMETRY KRABICKY
//------------------------------------------------------------
vyska = 40; //vyska celeho sloupku, pro zjisteni celkove vysky krabicky je potreba k teto vysce pricist tloustku 2xALBASE, nebo 2xPLBASE
 
//PLBASE PARAMETRY
//------------------------------------------------------------
tloustka_plbase = 2; //tloustka plbase
prekryti_der=0.3; //sila materiálu, který překrývá díry
 
//PRIPADNA VYSKA NOZICEK
//------------------------------------------------------------
vyska_nozicky=5;
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/print_data/TEFO01A_BOX02A_I2C_PLBASE_bottom.scad
0,0 → 1,16
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
//plbase s nožičkama
plbase_s_nozickama(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy);
 
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/print_data/TEFO01A_BOX02A_I2C_PLBASE_top.scad
0,0 → 1,11
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
plbase(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/print_data/TEFO01A_BOX02A_I2C_plate1.scad
0,0 → 1,42
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
 
banister_color = "cyan";
slat_color = "red";
 
/*
// box banisters
color(banister_color)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[90,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
*/
 
// box slats
color(slat_color)
translate([0,0,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,20,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,-20,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
color(slat_color)
translate([0,-40,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/print_data/TEFO01A_BOX02A_I2C_plate2.scad
0,0 → 1,38
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
 
banister_color = "cyan";
slat_color = "red";
 
/*
// box banisters
color(banister_color)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[90,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
*/
 
// box slats
color(slat_color)
translate([0,0,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,20,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,-20,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
color(slat_color)
translate([0,-40,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/print_data/TEFO01A_BOX02A_I2C_plate3.scad
0,0 → 1,29
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
barva_predni = "cyan";
barva_zadni = "red";
 
 
//celicko predni
//--------------------------------------------------------------
translate([0,-(10+vyska),0])
color(barva_predni)
rotate(a=[-90,0,0])
 
celicko_predni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//celicko zadni
//--------------------------------------------------------------
translate([0,(10+vyska),0])
color(barva_zadni)
rotate(a=[-90,0,180])
 
celicko_zadni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/print_data/TEFO01A_BOX02A_I2C_plate4.scad
0,0 → 1,31
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
barva_leve = "green";
barva_prave = "yellow";
 
 
//celicko prave
//-----------------------------------------------------------
color(barva_prave)
translate([vyska+10,0,0])
rotate(a=[-90,0,90])
 
celicko_prave (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
//*/
 
 
//celicko leve
//-----------------------------------------------------------
color(barva_leve)
translate([-(vyska+10),0,0])
rotate(a=[-90,0,270])
 
celicko_leve (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_I2C/CAD/uravena_celicka.scad
0,0 → 1,97
use <configuration/celicko.scad>
use <configuration/sloupek.scad>
use <configuration/lista.scad>
use <configuration/plbase.scad>
use <uravena_celicka.scad>
use <configuration/otvory.scad>
 
include <configuration/manufactury_conf.scad>
include <configuration.scad>
include <configuration/otvory_conf.scad>
 
//Slouzi pro vytvoreni vlastnich celicek dle potreby
 
//Vytvoreni predniho celicka krabicky
//--------------------------------------------------------
module celicko_predni()
difference() {
difference() {
 
celicko (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska);
pocet_der_dane_strany=10;
posun_od_kraje1=1;
USBI2C01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje1,vzdalenost_der,vyska_listy);
pocet_der_dane_strany=10;
posun_od_kraje=4;
UNIPOWER02A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy);
}
}
 
 
 
//Vytvoreni zadniho celicka krabicky
//--------------------------------------------------------
module celicko_zadni()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
 
translate([0,0,0])
MIC338(tloustka_celicka,vyska,zapust,vule_vysky_celicka);
}
}
 
 
//Vytvoreni leveho celicka krabicky
//--------------------------------------------------------
module celicko_leve()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
}
}
 
 
 
//Vytvoreni praveho celicka krabicky
//--------------------------------------------------------
module celicko_prave()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
}
}
barva_predni = "cyan";
barva_zadni = "red";
barva_leve = "green";
barva_prave = "yellow";
 
//Zobrazeni vzhledu navrhovanych celicek
color(barva_predni)
translate([0,-50,0])
celicko_predni();
 
color(barva_zadni)
translate([0,50,0])
rotate(a=[0,0,180])
celicko_zadni();
 
color(barva_leve)
translate([-60,0,0])
rotate(a=[0,0,270])
celicko_leve();
 
color(barva_prave)
translate([60,0,0])
rotate(a=[0,0,90])
celicko_prave();
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/assembly.scad
0,0 → 1,170
use <configuration/celicko.scad>
use <configuration/sloupek.scad>
use <configuration/lista.scad>
use <configuration/plbase.scad>
use <uravena_celicka.scad>
use <configuration/otvory.scad>
 
include <configuration/manufactury_conf.scad>
include <configuration.scad>
include <configuration/otvory_conf.scad>
 
 
barva_sloupku = "cyan";
barva_listy = "red";
barva_celicka = "green";
barva_plbase = "yellow";
 
//SLOUPKY
//------------------------------------------------------------
//sloupek 1
color(barva_sloupku)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 2
color(barva_sloupku)
translate([((pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[0,0,90])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 3
color(barva_sloupku)
translate([((pocet_der2+2)*vzdalenost_der)/2, (pocet_der1+2)*vzdalenost_der,0])
rotate(a=[0,0,180])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//sloupek 4
color(barva_sloupku)
translate([-((pocet_der2+2)*vzdalenost_der)/2, (pocet_der1+2)*vzdalenost_der,0])
rotate(a=[0,0,270])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
 
//VELKE LISTY
//--------------------------------------------------------
//lista velka 1
color(barva_listy)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),-vyska/2])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 2
color(barva_listy)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),vyska/2])
rotate(a=[180,0,180])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 3
color(barva_listy)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),vyska/2])
rotate(a=[180,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista velka 4
color(barva_listy)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),-vyska/2])
rotate(a=[0,0,180])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
 
 
//LISTY MALE
//---------------------------------------------------------
//lista mala 1
color(barva_listy)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),((pocet_der1+2)*vzdalenost_der)/2,-vyska/2])
rotate(a=[0,0,90])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 2
color(barva_listy)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry),((pocet_der1+2)*vzdalenost_der)/2,vyska/2])
rotate(a=[0,180,90])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 3
color(barva_listy)
translate([-(((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)),((pocet_der1+2)*vzdalenost_der)/2,vyska/2])
rotate(a=[0,180,270])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//lista mala 4
color(barva_listy)
translate([-(((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)),((pocet_der1+2)*vzdalenost_der)/2,-vyska/2])
rotate(a=[0,0,270])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
//CELICKA
//--------------------------------------------------------
//celicko predni
 
color(barva_celicka)
translate([0,-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),-(vyska-2*zapust-vule_vysky_celicka)/2])
celicko_predni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//celicko zadni
color(barva_celicka)
translate([0,((pocet_der1+2)*vzdalenost_der)+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)+((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,180])
celicko_zadni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
///*
//celicko prave
color(barva_celicka)
translate([((pocet_der2+2)*vzdalenost_der)/2+(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)+((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),(pocet_der1+2)*vzdalenost_der/2,-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,90])
celicko_prave (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
//*/
//celicko leve
color(barva_celicka)
translate([-((pocet_der2+2)*vzdalenost_der)/2-(((vzdalenost_od_diry+vzdalenost_od_okraje)/2)-vzdalenost_od_diry)-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tloustka_celicka/2)),(pocet_der1+2)*vzdalenost_der/2,-(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[0,0,270])
celicko_leve (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//PLBASE SPODNI
//-------------------------------------------------------------
color(barva_plbase)
//základní plbase bez nožiček
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-(vyska/2)])
rotate(a=[180,0,90])
 
 
plbase(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
*/
 
//plbase s nožičkama
//*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-((vyska/2))])
rotate(a=[180,0,90])
plbase_s_nozickama(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy);
//*/
 
//plbase se zápustnými šrouby
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,-(vyska/2)])
rotate(a=[180,0,90])
 
plbase_zapustene_srouby(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
*/
 
//PLBASE HORNI
//-------------------------------------------------------------
//základní plbase bez nožiček
///*
/*translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,2* vyska])
rotate(a=[0,0,0])
 
plbase(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
//*/
//plbase se zapuštěním šroubů
/*
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,(vyska/2)])
rotate(a=[0,0,0])
 
plbase_zapustene_srouby(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
*/
 
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/configuration/celicko.scad
0,0 → 1,11
//Funkce generujici plne celicko
module celicko (vyska,zapust,vule_vysky_celicka,pocet_der,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy) {
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = vyska-2*zapust-vule_vysky_celicka)
square([(pocet_der-1)*vzdalenost_der-vule_delky_celicka, tloustka_celicka-vule_tlousky], center = true);
}
}
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/configuration/lista.scad
0,0 → 1,59
//Funkce generujici listu
module lista (vzdalenost_der,pocet_der,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tlouska_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu) {
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = zapust+vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust])
linear_extrude(height = vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true);
//otvory pro hlavy sroubu
//--------------------------------------------------------------
translate([vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),vyska_hlavy/2]) // center top screw
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
translate([-vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),vyska_hlavy/2]) // center top screw
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
//otvory pro srouby
//--------------------------------------------------------------
 
for (i = [0:1:pocet_der]) {
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true);
}
//otvory pro matice
//--------------------------------------------------------------
for (i = [1:1:(pocet_der-1)]) {
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje)-((((prumer_matice+posuv_dorazu+vzdalenost_od_diry)/2))-(prumer_matice+posuv_dorazu)/2)),matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
}
}
}
//lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/configuration/manufactury_conf.scad
0,0 → 1,41
$fn=20; // model faces resolution.
 
//Sloupek - vyrobni parametry
zapust=4.5; //zápust ve sloupku pro listu
tolerance=0.5; //tolerance mezi zapusti v sloupku a v listě
zapust1=zapust+tolerance;
 
//Sroub - parametry
vyska_hlavy = 3.5;
prumer_hlavy=6;
prumer_sroubu=3.3;
 
//Matice - parametry
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod maticí na ose z
 
 
//Lišta parametry
//---------------------------------------------------
//rozměry výrezu v ose y
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
 
//rozmery vyrezu v ose x
vzdalenost_1 = 4.6; //od díry ke kraji
vzdalenost_2 = 5;
 
vyska_listy=2; //definuje výšku žlábku do kterého se vsunuje čelíčko
 
//parametry pro úžlabinu
sirka_materialu = 2; //sirka materialu od kraje desky k uzlabine
 
 
//Celicko
//--------------------------------------------------
vule_vysky_celicka =0.5; //definuje vůli celicka v liste
vule_delky_celicka =0.1;
tloustka_celicka = 2;
vule_tlousky = 0.2;
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/configuration/otvory.scad
0,0 → 1,141
//Funkce otvuru pro ruzne prvky umistene do celicek
 
/*OBSAHUJE
1A) - LCD 2x16 - urceno pro montaz LCD 2x16 znaku
1B) - Pro modul RS232SINGLE01A
1C) - Pro modul USBI2C01A
1D) - Pro konektor MIC338
1E) - Pro modul UNIPOWER02A
*/
 
 
//1A) - LCD 2x16
//--------------------------------------------------------
module otvor_LCD2_16_diry(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska)
{
//otvor na LCD
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2])
cube(size = [ramecek_x,tloustka_celicka,ramecek_y], center = true);
 
//diry na srouby pro LCD
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
}
module otvor_LCD2_16_sloupky(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska)
{
union() {
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
 
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
rotate(a=[90,0,0])
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
}
}
 
 
/*1B) - Pro modul RS232SINGLE01A
--------------------------------------------------------
--------------------------------------------------------
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
vzdalenost_der - definuje rozec der
 
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
 
*/
 
module RS232SINGLE01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
{
RS232SINGLE01A_sirka_kon=32; //sirka konektoru
RS232SINGLE01A_vyska_kon=13.5; //vyska konektoru
RS232SINGLE01A_sirka_mod_otvory=5; //kolik modul zabira der
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(RS232SINGLE01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,RS232SINGLE01A_vyska_kon/2+vyska_listy])
cube(size = [RS232SINGLE01A_sirka_kon,tloustka_celicka,RS232SINGLE01A_vyska_kon], center = true);
}
 
 
/*1C) - Pro modul USBI2C01A
--------------------------------------------------------
--------------------------------------------------------
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
vzdalenost_der - definuje rozec der
 
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
 
*/
 
module USBI2C01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
{
USBI2C01A_sirka_kon=13; //sirka konektoru
USBI2C01A_vyska_kon=12; //vyska konektoru
USBI2C01A_sirka_mod_otvory=3; //kolik modul zabira der
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(USBI2C01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,USBI2C01A_vyska_kon/2+vyska_listy])
cube(size = [USBI2C01A_sirka_kon,tloustka_celicka,USBI2C01A_vyska_kon], center = true);
}
 
/*1D) - Pro konektor MIC338
--------------------------------------------------------
--------------------------------------------------------
*/
 
module MIC338(tloustka_celicka,vyska,zapust,vule_vysky_celicka)
{
MIC338_polomer_kon=8; //polomer montazniho otvoru
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2])
rotate(a=[90,0,0])
cylinder(h=tloustka_celicka+0.1, r=MIC338_polomer_kon+0.1, center=true);
}
 
/*1D) - Pro modul UNIPOWER02A
--------------------------------------------------------
--------------------------------------------------------
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
vzdalenost_der - definuje rozec der
 
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
 
*/
 
module UNIPOWER02A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
{
UNIPOWER02A_sirka_kon=9; //sirka konektoru
UNIPOWER02A_vyska_kon=11; //vyska konektoru
UNIPOWER02A_sirka_mod_otvory=4; //kolik modul zabira der
UNIPOWER02A_vzdalenost_konektoru=6; //vzdalenost kraje konektoru od středu šroubu
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+posun_od_kraje*vzdalenost_der+UNIPOWER02A_vzdalenost_konektoru+UNIPOWER02A_sirka_kon/2,0,UNIPOWER02A_vyska_kon/2+vyska_listy])
cube(size = [UNIPOWER02A_sirka_kon,tloustka_celicka,UNIPOWER02A_vyska_kon], center = true);
}
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/configuration/otvory_conf.scad
0,0 → 1,16
//Konfigurace pro otvory
 
//1A) - LCD 2x16
//vzdalenost der
vzdalenost_der_x = 75;
vzdalenost_der_y = 31;
prumer_otvoru = 2.7;
prumer_sloupku = 5;
 
//ramecek LCD
ramecek_x = 72;
ramecek_y = 26;
 
//vyska ramecku LCD
ramecek_vyska = 5;
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/configuration/plbase.scad
0,0 → 1,125
/*
pocet_der1=5;
pocet_der2=3;
radidus_hrany=5;
vzdalenost_der=10.16;
vzdalenost_od_okraje=8.8;
prumer_sroubu=3.3;
 
tloustka_plbase=2;
prekryti_der=0.3;
 
vyska_nozicky=5;
 
vyska_hlavy = 3.5;
prumer_hlavy=6;
*/
 
//PLBASE ZAKLADNI
//------------------------------------------------------------
module plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der){
 
difference () {
//union () {
translate([radidus_hrany,radidus_hrany,0])
minkowski()
{
cube([(pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,(pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,tloustka_plbase]); // base plastics brick
cylinder(r=radidus_hrany,h=0.1);
}
 
for (i = [0:1:pocet_der1-1]) {
for (a = [0:1:pocet_der2-1]) {
translate([vzdalenost_od_okraje+vzdalenost_der*i,vzdalenost_od_okraje+vzdalenost_der*a, (tloustka_plbase-prekryti_der)/2]) // center top screw
cylinder(((tloustka_plbase-prekryti_der)), d=prumer_sroubu, center=true);
}
}
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw
cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
}
}
 
 
 
//MODEL NOZICKY PRO PLBASE
//-----------------------------------------------------------
//průmer nozicky je roven vzdalenost_der
module nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy)
{
difference () {
translate([0,0,-vyska_nozicky/2])
cylinder((vyska_nozicky), d=vzdalenost_der, center=true);
translate([0,0,-(vyska_nozicky-vyska_hlavy/2)])
cylinder((vyska_hlavy), d=prumer_hlavy, center=true);
translate([0,0,-vyska_nozicky/2])
cylinder((vyska_nozicky), d=prumer_sroubu, center=true);
}
}
 
 
 
//PLBASE S NOZICKAMA
//-----------------------------------------------------------
module plbase_s_nozickama(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){
plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, tloustka_plbase]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
rotate(a=[180,0,0])
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
}
 
//PLBASE SE ZAPUSTENIM SROUBU
//------------------------------------------------------
module plbase_zapustene_srouby(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy){
difference () {
plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,(vyska_hlavy+1.5),prekryti_der);
 
translate([vzdalenost_od_okraje,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
 
translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw
cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
 
}
}
/*
plbase_zapustene_srouby(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy);
 
nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/configuration/sloupek.scad
0,0 → 1,107
//Funkce pro generovani sloupku
module sloupek(
vyska,
zapust,
vzdalenost_der,
vzdalenost_od_okraje,
vzdalenost_od_diry,
radidus_hrany,
prumer_sroubu,
prumer_matice,
vyska_matice,
posuv_dorazu,
matice_sila_materialu) {
 
difference () {
union () {
color("green")
translate([-(vzdalenost_od_okraje-radidus_hrany),-(vzdalenost_od_okraje-radidus_hrany),0]) // center top screw
cylinder(vyska, d=(2*radidus_hrany), center=true);
 
color("cyan")
translate([vzdalenost_der/4, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_der/2], center = true);
 
color("gray")
translate([-vzdalenost_od_okraje/2, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([(vzdalenost_od_okraje), vzdalenost_der/2], center = true);
color("gray")
translate([vzdalenost_der/4, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_od_okraje], center = true);
color("red")
translate([-(vzdalenost_od_okraje-radidus_hrany)/2, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje-radidus_hrany, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,-(vzdalenost_od_okraje-radidus_hrany)/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje, vzdalenost_od_okraje-radidus_hrany], center = true);
 
color("green")
translate([vzdalenost_der, -vzdalenost_od_okraje/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([ vzdalenost_od_okraje,vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_od_diry/2, vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([(vzdalenost_od_diry), vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_der, vzdalenost_od_diry/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_diry ], center = true);
}
 
//diry na sroub
translate([0,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([vzdalenost_der,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([0,vzdalenost_der,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
//diry na matice
//1. krajni matice
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
 
//2. krajni matice
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
//prostredni dira
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
}
}
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/configuration.scad
0,0 → 1,29
//ALBASE1115
//------------------------------------------------------------
///*
vzdalenost_der = 10.16; //rozteč děr mezi sebou
radidus_hrany = 5; //radius zaobleni sloupku
 
//parametry lišty
vzdalenost_od_okraje = 8.88; //vzdalenost stredu upevnovaci diry od kraje desky
 
//mala hrana
pocet_der1 = 6; //pocet der desky, ponížené o 3
 
//velka hrana
pocet_der2 = 12; //pocet der desky, ponížené o 3
//*/
 
 
//OBECNE PARAMETRY KRABICKY
//------------------------------------------------------------
vyska = 40; //vyska celeho sloupku, pro zjisteni celkove vysky krabicky je potreba k teto vysce pricist tloustku 2xALBASE, nebo 2xPLBASE
 
//PLBASE PARAMETRY
//------------------------------------------------------------
tloustka_plbase = 2; //tloustka plbase
prekryti_der=0.3; //sila materiálu, který překrývá díry
 
//PRIPADNA VYSKA NOZICEK
//------------------------------------------------------------
vyska_nozicky=5;
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/print_data/TEFO01A_BOX02A_RS232_PLBASE_bottom.scad
0,0 → 1,16
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
//plbase s nožičkama
plbase_s_nozickama(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy);
 
 
 
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/print_data/TEFO01A_BOX02A_RS232_plate1.scad
0,0 → 1,42
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
 
banister_color = "cyan";
slat_color = "red";
 
/*
// box banisters
color(banister_color)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[90,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
*/
 
// box slats
color(slat_color)
translate([0,0,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,20,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,-20,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
color(slat_color)
translate([0,-40,0])
rotate(a=[0,0,0])
lista (vzdalenost_der,pocet_der2,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/print_data/TEFO01A_BOX02A_RS232_plate2.scad
0,0 → 1,38
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
 
 
banister_color = "cyan";
slat_color = "red";
 
/*
// box banisters
color(banister_color)
translate([(-(pocet_der2+2)*vzdalenost_der)/2,0,0])
rotate(a=[90,0,0])
sloupek (vyska,zapust1,vzdalenost_der,vzdalenost_od_okraje,vzdalenost_od_diry,radidus_hrany,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
*/
 
// box slats
color(slat_color)
translate([0,0,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,20,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
 
color(slat_color)
translate([0,-20,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
color(slat_color)
translate([0,-40,0])
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/print_data/TEFO01A_BOX02A_RS232_plate3.scad
0,0 → 1,29
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
barva_predni = "cyan";
barva_zadni = "red";
 
 
//celicko predni
//--------------------------------------------------------------
translate([0,-(10+vyska),0])
color(barva_predni)
rotate(a=[-90,0,0])
 
celicko_predni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
 
//celicko zadni
//--------------------------------------------------------------
translate([0,(10+vyska),0])
color(barva_zadni)
rotate(a=[-90,0,180])
 
celicko_zadni (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/print_data/TEFO01A_BOX02A_RS232_plate4.scad
0,0 → 1,31
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
barva_leve = "green";
barva_prave = "yellow";
 
 
//celicko prave
//-----------------------------------------------------------
color(barva_prave)
translate([vyska+10,0,0])
rotate(a=[-90,0,90])
 
celicko_prave (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
//*/
 
 
//celicko leve
//-----------------------------------------------------------
color(barva_leve)
translate([-(vyska+10),0,0])
rotate(a=[-90,0,270])
 
celicko_leve (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/print_data/TEFO01A_BOX02A_RS232_top.scad
0,0 → 1,11
use <../configuration/celicko.scad>
use <../configuration/sloupek.scad>
use <../configuration/lista.scad>
use <../configuration/plbase.scad>
use <../uravena_celicka.scad>
 
 
include <../configuration/manufactury_conf.scad>
include <../configuration.scad>
 
plbase(pocet_der2+3,pocet_der1+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
/Designs/ROBOTS/TEFO01A/CAD/TEFO01A_BOX02A_RS232/CAD/uravena_celicka.scad
0,0 → 1,97
use <configuration/celicko.scad>
use <configuration/sloupek.scad>
use <configuration/lista.scad>
use <configuration/plbase.scad>
use <uravena_celicka.scad>
use <configuration/otvory.scad>
 
include <configuration/manufactury_conf.scad>
include <configuration.scad>
include <configuration/otvory_conf.scad>
 
//Slouzi pro vytvoreni vlastnich celicek dle potreby
 
//Vytvoreni predniho celicka krabicky
//--------------------------------------------------------
module celicko_predni()
difference() {
 
celicko (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska);
pocet_der_dane_strany=15;
posun_od_kraje1=1;
RS232SINGLE01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje1,vzdalenost_der,vyska_listy);
pocet_der_dane_strany=15;
posun_od_kraje=9;
UNIPOWER02A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy);
}
 
 
 
 
//Vytvoreni zadniho celicka krabicky
//--------------------------------------------------------
module celicko_zadni()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
MIC338(tloustka_celicka,vyska,zapust,vule_vysky_celicka);
}
}
 
 
//Vytvoreni leveho celicka krabicky
//--------------------------------------------------------
module celicko_leve()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
}
}
 
 
 
//Vytvoreni praveho celicka krabicky
//--------------------------------------------------------
module celicko_prave()
{
translate([0,0,0])
difference() {
celicko (vyska,zapust,vule_vysky_celicka,pocet_der1,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy);
 
}
}
barva_predni = "cyan";
barva_zadni = "red";
barva_leve = "green";
barva_prave = "yellow";
 
//Zobrazeni vzhledu navrhovanych celicek
color(barva_predni)
translate([0,-50,0])
celicko_predni();
 
color(barva_zadni)
translate([0,50,0])
rotate(a=[0,0,180])
celicko_zadni();
 
color(barva_leve)
translate([-60,0,0])
rotate(a=[0,0,270])
celicko_leve();
 
color(barva_prave)
translate([60,0,0])
rotate(a=[0,0,90])
celicko_prave();
 
/Designs/ROBOTS/TEFO01A/CAD/info.txt
0,0 → 1,13
Boxi pro TEFO01A
 
TEFO01A_BOX01A
-box vycházející z BASEBOX01A
-určen pro první část TEFO01A - HBSTEP01B, I2CSPI01A
 
TEFO01A_BOX02A_I2C
-box vycházející z BASEBOX01A
-určen pro druhou část ve variantě s I2C. Obsahuje moduly USBI2C01A,UNIPOWER02A, MIC338 (konektor)
 
TEFO01A_BOX02A_RS232
-box vycházející z BASEBOX01A
-určen pro druhou část ve variantě s RS232. Obsahuje moduly R232SINGLE01A, I2C232V01A, UNIPOWER02A, MIC338 (konektor)