Hirdetés
-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Undoroid
őstag
válasz
Undoroid
#17538
üzenetére
Sziasztok szakik!
Régebben foglalkoztat az a gondolat, hogy ezt a próbafeladatot kissé megváltoztassam:
File name: 26_steppermotor.inoDescription: You can observe the stepper motor is fast andforward in a circle, next the stepper motor isslow and reverse in a circle.Website: www.adeept.comE-mail: support@adeept.comAuthor: TomDate: 2015/05/02***********************************************************/int Pin0 = 8;//definition digital 8 pins as pin to control the IN1 (ULN24L01)int Pin1 = 9;//definition digital 9 pins as pin to control the IN2 (ULN24L01)int Pin2 = 10;//definition digital 10 pins as pin to control the IN3 (ULN24L01)int Pin3 = 11;//definition digital 11 pins as pin to control the IN4 (ULN24L01)int _step = 512;int _speed = 1;void setup(){pinMode(Pin0, OUTPUT);//Set digital 8 port mode, the OUTPUT for the outputpinMode(Pin1, OUTPUT);//Set digital 9 port mode, the OUTPUT for the outputpinMode(Pin2, OUTPUT);//Set digital 10 port mode, the OUTPUT for the outputpinMode(Pin3, OUTPUT);//Set digital 11 port mode, the OUTPUT for the output}void loop(){Speed(15);//Stepper motor speed = 15 fast (note:speed from 1 to 15)Step(512);//Stepper motor forward 512 steps ---- 360 angledelay(2000);// delay 2SSpeed(1); //Stepper motor speed = 1 slow (note:speed from 1 to 15)Step(-512);//Stepper motor backward 512 steps ---- 360 angledelay(2000);//delay 2S}void Speed(int stepperspeed)//set Stepper speed{_speed = 15 - stepperspeed;if( _speed<1){_speed = 1;}if( _speed>15){_speed = 15;}}void Step(int _step)//Stepper motor rotation{if(_step>=0){ // Stepper motor forwardfor(int i=0;i<_step;i++){setStep(1, 0, 0, 1);delay(_speed);setStep(1, 0, 0, 0);delay(_speed);setStep(1, 1, 0, 0);delay(_speed);setStep(0, 1, 0, 0);delay(_speed);setStep(0, 1, 1, 0);delay(_speed);setStep(0, 0, 1, 0);delay(_speed);setStep(0, 0, 1, 1);delay(_speed);setStep(0, 0, 0, 1);delay(_speed);}}else{ // Stepper motor backwardfor(int i=_step;i<0;i++){setStep(0, 0, 0, 1);delay(_speed);setStep(0, 0, 1, 1);delay(_speed);setStep(0, 0, 1, 0);delay(_speed);setStep(0, 1, 1, 0);delay(_speed);setStep(0, 1, 0, 0);delay(_speed);setStep(1, 1, 0, 0);delay(_speed);setStep(1, 0, 0, 0);delay(_speed);setStep(1, 0, 0, 1);delay(_speed);}}}void setStep(int a, int b, int c, int d){digitalWrite(Pin0, a);digitalWrite(Pin1, b);digitalWrite(Pin2, c);digitalWrite(Pin3, d);}Ennek a programnak annyi jelenleg a feladata, hogy a szervómotort az egyik irányba 'gyorsan' forgatja, majd a beprogramozott elfordulás után, lassan visszaforgatja a kiindulási pozícióra, majd újra elindul 'gyorsan' a másik irányba...és végtelen ciklusban így ismétli magát!
Annyit szeretnék összehozni / változtatni ezen, hogy a programot alapból egy PS2-es joy-al irányítanám a forgás irányát- és sebességét (lassú - gyors bőven elég) Az elfordulási szöget nem kell figyelni, mert azt mechanikusan fogom korlátozni.
Az első gondolatom az volt, hogy alapból a Joy-al lehetett volna mozgatni a szervót és a Joy kapcsolójával átváltott volna a mozgatás autómata üzemre...viszont átváltáskor figyelni kellett volna az aktuális helyzetet, így azt inkább hanyagolnám.Felesleges ennyire túlbonyolítani ezt a feladatot. Ha majd jobban megy az ilyen feladatok megoldása, akkor talán már menni fog ez saját 'kútfőből' is!
Találtam a NET-en ilyen feladatot, de ott más szervókat alkalmaznak.
Valakinek van kedve segíteni ennek a megvalósításában?
Új hozzászólás Aktív témák
- 9800x3d félkonfig
- Dell Latitude 7390 / i7 8650U / 16GB DDR4 / 256GB Nvme / Vill. Eu bill / Jó akku
- Dell Latitude 5440 / i5 1345U / 16GB DDR4 / 512GB SSD / Excelent akku / Magyar bill
- Bomba ár! HP ProBook 450 G8 - i5-1135G7 I 8GB I 256SSD I HDMI I 15,6" FHD I Cam I W11 I Gar
- Bomba ár! HP ProBook 440 G8 - i5-11GEN I 8GB I 256SSD I HDMI I 14" FHD I Cam I W11 I Gar
- Zalman S3 Black modern, letisztult szèpsèg
- GYÖNYÖRŰ iPhone 12 mini 128GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS3856, 100% Akksi
- Lenovo Thinkpad P16 G2 - i9-13980HX, 32GB, 1TB SSD, 16" WQUXGA (3840 2400), RTX 4090 - TOUCH
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Space Black - 1 ÉV GARANCIA, Kártyafüggetlen,MS3489, 100% Akksi
- Bomba ár! HP Elitebook Folio 9480m - i5-4GEN I 8GB I 256SSD I 14" HD+ I Cam I W10 I Garancia!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi
ekkold

