- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- sziku69: Fűzzük össze a szavakat :)
- bambano: Bambanő háza tája
- Luck Dragon: Asszociációs játék. :)
- zebra_hun: Hűthető e kulturáltan a Raptor Lake léghűtővel a kánikulában?
- Elektromos rásegítésű kerékpárok
- Argos: Szeretem az ecetfát
- GoodSpeed: Ugrás 32 GB RAM-ról 64 GB RAM-ra: Corsair Vengeance CMK64GX5M2B6000Z30
- Gurulunk, WAZE?!
-
LOGOUT
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.ino
Description: You can observe the stepper motor is fast and
forward in a circle, next the stepper motor is
slow and reverse in a circle.
Website: www.adeept.com
E-mail: support@adeept.com
Author: Tom
Date: 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 output
pinMode(Pin1, OUTPUT);//Set digital 9 port mode, the OUTPUT for the output
pinMode(Pin2, OUTPUT);//Set digital 10 port mode, the OUTPUT for the output
pinMode(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 angle
delay(2000);// delay 2S
Speed(1); //Stepper motor speed = 1 slow (note:speed from 1 to 15)
Step(-512);//Stepper motor backward 512 steps ---- 360 angle
delay(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 forward
for(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 backward
for(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
Hirdetés
- iPhone topik
- Bambu Lab 3D nyomtatók
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Casco és kötelező gépjármű felelősségbiztosítás
- Hat év támogatást csomagolt fém házba a OnePlus Nord 4
- Path of Exile (ARPG)
- Google Pixel topik
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Milyen routert?
- Windows 11
- További aktív témák...
- DJI Mini 3 Fly More Combo drón telefonos távirányítóval
- Core i7 9700 processzor - 6 hó garival
- Dell 24" 1920x1080 full HD - webkamerás konferencia monitor hangszóróval! - gyári garancia 2028ig
- Dell Latitude 5590, 15,6" FULL HD IPS, I5-8350U CPU, 16GB DDR4, 256GB NVMe SSD, WIN 11 ÚJ AKKU
- Dell 27" UltraSharp U2713HM QHD 2560x1440 IPS DP/DVI/HDMI/VGA monitor - PIVOT is - több db
- Nvidia Quadro P400/ P600/ P620/ P1000/ T400/ T600/ T1000 - Low profile (LP) + RTX A2000 6/12Gb
- Telefon felvásárlás!! Xiaomi Redmi Note 13, Xiaomi Redmi Note 13 Pro, Xiaomi Redmi Note 13 Pro+
- LG 45GS95QE - 45" Ívelt OLED / 2K WQHD / 240Hz 0.03ms / NVIDIA G-Sync / FreeSync Premium / HDMI 2.1
- Azonnali készpénzes AMD Ryzen 1xxx 2xxx 3xxx 5xxx processzor felvásárlás személyesen / csomagküldés
- AKCIÓ! Lenovo IS8XM LGA 1150 DDR3 alaplap garanciával hibátlan működéssel
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PC Trade Systems Kft.
Város: Szeged