Servo jel
Servo jel
Az lenne a kérdésem, hogy az arduino tud-e servo jelet érzékelni?
Úgy értem, hogy van egy arduino uno-m és szeretném rákapcsolni a rádiófrekvenciás távirányítóm vevőjét ami servo(négyszög) jelet ad.
A kivezetését kötném az arduino bemenetére. Ezt a programba hogyan tudom megadni, hogy tudja mikor tolom fel v. le a kart?
A válaszokat előre is köszi!
Üdv egabor!
Úgy értem, hogy van egy arduino uno-m és szeretném rákapcsolni a rádiófrekvenciás távirányítóm vevőjét ami servo(négyszög) jelet ad.
A kivezetését kötném az arduino bemenetére. Ezt a programba hogyan tudom megadni, hogy tudja mikor tolom fel v. le a kart?
A válaszokat előre is köszi!
Üdv egabor!
- vargajano53
- Bitmanipulátor
- Hozzászólások: 103
- Csatlakozott: 2011. szeptember 19. hétfő, 6:00
Re: Servo jel
Szia !
A Szervo jeled , gondolom , az impulzus jeled kitöltési tényezőjét változtatja (?) A tW változik (?) A periodus idő (a frekvencia (?)) és a késleltetés ( Delay ) nem változik . Üdv varga jano A kitöltési tényező bemutatása szkóppal :
https://www.youtube.com/watch?v=BW6dU1RQM9s
A Szervo jeled , gondolom , az impulzus jeled kitöltési tényezőjét változtatja (?) A tW változik (?) A periodus idő (a frekvencia (?)) és a késleltetés ( Delay ) nem változik . Üdv varga jano A kitöltési tényező bemutatása szkóppal :
https://www.youtube.com/watch?v=BW6dU1RQM9s
varga jano
Re: Servo jel
Szerintem valami ilyesmi mert még a négyszögjelhez nem nagyon értek.
- vargajano53
- Bitmanipulátor
- Hozzászólások: 103
- Csatlakozott: 2011. szeptember 19. hétfő, 6:00
Re: Servo jel
Szia !
A szervo jelet nézd meg vagy valakit kérj meg , hogy nézze meg , ilyen vagy hasonló-e ? A oscilloscope műszer , vagy " szkóp " alkalmas erre . Üdv jano
A szervo jelet nézd meg vagy valakit kérj meg , hogy nézze meg , ilyen vagy hasonló-e ? A oscilloscope műszer , vagy " szkóp " alkalmas erre . Üdv jano
varga jano
Re: Servo jel
Én úgy tudom hogy a servo-nak mindig egy tartományú négyszögjelet kell adni.
Nincs meg a kellő jogosultságod a hozzászóláshoz csatolt állományok megtekintéséhez.
- vargajano53
- Bitmanipulátor
- Hozzászólások: 103
- Csatlakozott: 2011. szeptember 19. hétfő, 6:00
Re: Servo jel
Szia !
A csatolmányodon látható , hogy a jelnek , a periódosideje (a frekvenciája ) változatlan . ( Két azonos pontot kijelölsz az első és második jelen ,és időt mérsz . ) Az impulus szélessége változik . Keskenyebb jelhez , a minimum pozíció ( -90fok ) , a szélesedő jelhez , neutral pozíció ( 0fok ), a legszélesebb jelhez , a maximális pozíció ( +90fok ) , tartozik . ( Az egyik jelnél , a felfutó él és a lefutó él közötti idő mérése . ) ( A pozitív , ábrádon látható , jelnél . ) Üdv Jano
A csatolmányodon látható , hogy a jelnek , a periódosideje (a frekvenciája ) változatlan . ( Két azonos pontot kijelölsz az első és második jelen ,és időt mérsz . ) Az impulus szélessége változik . Keskenyebb jelhez , a minimum pozíció ( -90fok ) , a szélesedő jelhez , neutral pozíció ( 0fok ), a legszélesebb jelhez , a maximális pozíció ( +90fok ) , tartozik . ( Az egyik jelnél , a felfutó él és a lefutó él közötti idő mérése . ) ( A pozitív , ábrádon látható , jelnél . ) Üdv Jano
varga jano
Re: Servo jel
aha.
De ezt hogy tudom arduino-n "mérni"
De ezt hogy tudom arduino-n "mérni"
Re: Servo jel
Szerintem!
Gooogle: pulse width measurement arduino
És keresgélsz!
Gooogle: pulse width measurement arduino
És keresgélsz!
Re: Servo jel
Pl. egészen 1*Ű:
Kód: Egész kijelölése
//
// FILE: PulseWidthMeter.pde
// AUTHOR: Rob Tillaart
// DATE: 2012-mar-20
//
// LINK: http://arduino.cc/forum/index.php?action=post;topic=96971.0
//
unsigned int count = 0;
void setup()
{
Serial.begin(9600);
Serial.println("pulse width meter 0.1");
pinMode(3, INPUT);
}
void loop()
{
count = 0;
while ((PIND & B00001000) == B00000000); // wait for HIGH
unsigned long start = micros();
while ((PIND & B00001000) == B00001000) count++; // start counting until LOW
unsigned long stop = micros();
Serial.print("CNT: ");
Serial.println(count, DEC);
Serial.print(stop-start, DEC);
Serial.println(" microseconds ");
Serial.print((1.0*count)/(stop-start), 3);
Serial.println(" count per microseconds ");
delay(1000);
}