S pomocí příkladů od knihovny Stepper, která je standardní součástní Arduino IDE, jsem napsal následující jednoduchý prográmek pro otočení krokového motoru o osminu otáčky (o 45 °) po stisknutí tlačítka připojeného na pin A0 a zem:
#include <stepper.h> const int stepsPerRevolution = 50; Stepper myStepper(stepsPerRevolution, 2, 3, 4, 5); void setup() { pinMode(A0, INPUT_PULLUP); myStepper.setSpeed(60); } void loop() { static byte krok = 0; if (!digitalRead(A0)) { myStepper.step(6 + (((krok++ % 4) == 0) ? 1 : 0)); delay(100); } }
SCAD zdrojový kód pro unašeč CD, nasazený na hřídeli krokového motoru. Používá knihovnu Gears pro vytvoření ozubené díry. Vytištěno z PETG na i3 MK2 za 16 minut:
include <gears.scad>; zuby_h = 7.4; cd_d = 14.9; cd_h = 1.2; vyska = 8; union() { difference() { cylinder(vyska, d1=18, d2=30); linear_extrude(height = zuby_h) gear(number_of_teeth=15, circular_pitch=100, clearance = 0); } translate([0, 0, vyska]) cylinder(cd_h, d1=cd_d, d2=cd_d); }
SCAD zdrojový kód pro podstavec motoru, aby tento necestoval po stole. Vytištěný také z PETG, protože motor se zahřívá (i když stojí!), takže podstavec z PLA (ze kterého jinak tisknu vše) by se pod ním nejspíš roztekl:
prumer = 60; vyska = 2.4; dira_d = 12; dira_h = 2.2; roztec = 49.5; sloup_d = 6; sloup_h = 13.4; sroub_d = 2.8; sroub_h = 6; union() { difference() { cylinder(vyska, d1=prumer, d2=prumer); translate([0, 0, vyska - dira_h]) cylinder(dira_h, d1=dira_d, d2=dira_d); } translate([roztec/2, 0, vyska]) sloupek(); translate([-roztec/2, 0, vyska]) sloupek(); } module sloupek() { difference() { cylinder(sloup_h, d1=sloup_d, d2=sloup_d); translate([0, 0, sloup_h-sroub_h]) cylinder(sroub_h, d1=sroub_d, d2=sroub_d); } }
A to je vše :-)
Ahoj Peťo. Díky za video a text. Je to super zajímavé!
OdpovědětVymazatČtenáře by zajímalo, k čemu výsledný výrobek slouží :-)
OdpovědětVymazatPerfektní
OdpovědětVymazat