- Hamarosan megkezdődik a nubia 2,8K-s táblagépének szállítása
- Barátokká váltak az eddig rivális AI-óriások
- ASUS blog: Ideális olcsó utazós gép lett az új Vivobook S14
- Az Aura Displays hordozható monitorhármasa jól felturbózhatja a produktivitást
- Dual Mode-os IPS monitorral adott magáról életjelet a Gigabyte
- Házimozi belépő szinten
- Milyen széket vegyek?
- Lítium-ion/Li-ion akkumulátorok
- Kormányok / autós szimulátorok topikja
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- Melyik tápegységet vegyem?
- Milyen belső merevlemezt vegyek?
- Szünetmentes tápegységek (UPS)
- Házi hangfal építés
- VR topik
-
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.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
- Házimozi belépő szinten
- Futás, futópályák
- Counter-Strike: Global Offensive (CS:GO) / Counter-Strike 2 (CS2)
- Android alkalmazások - szoftver kibeszélő topik
- Milyen széket vegyek?
- Bittorrent topik
- Path of Exile (ARPG)
- Redmi Note 14 5G - jól sikerült az alapmodell
- Mibe tegyem a megtakarításaimat?
- Metal topik
- További aktív témák...
- Void RGB PC - i7 9700f, 16Gb RAM, RTX 2080Ti 11Gb stb.
- ÚJ PS5 Slim - FW 8.40 - Lemezolvasó - Lua Loader - Lua játék - Lapse
- új, bontatlan, iPhone 16E gyárilag kártya-független, apple világgaranciával
- Üzletből, garanciával, Macbook Pro Retina 16" 2019, Gray i9 64GB RAM 1TB SSD Radeon Pro 5500M
- Üzletből, garanciával, Macbook Pro Retina 16" 2019, Gray i9 64GB RAM 2TB SSD Radeon Pro 5600M 8GB
- Bomba ár! HP EliteBook 820 G2 - i5-5GEN I 8GB I 256GB SSD I 12,5" FHD I Cam I W10 I Garancia!
- LG 25GR75FG - E-Sport Monitor - FHD 360Hz 1ms - NVIDIA Reflex + G-sync - AMD FreeSync - HDR 400
- Honor 90 Lite 256GB, Kártyafüggetlen, 1 Év Garanciával
- iKing.Hu - Samsung S25 Ultra - Titanium Black - Használt, karcmentes
- AKCIÓ! ASUS PRIME Z390-P i5 8600K 16GB DDR4 512GB SSD RX 6600 8GB GDDR6 DEEPCOOL Matrexx55 630W
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged