Orodha ya maudhui:
- Hatua ya 1: Vitu Unavyoweza Kuhitaji…
- Hatua ya 2: Unganisha vifaa
- Hatua ya 3: Panga Arduino
- Hatua ya 4: Sakinisha Programu
- Hatua ya 5: Tumia Programu ya Maingiliano
- Hatua ya 6: Pata Ubunifu
Video: Arduino Msingi Servo Mdhibiti: 6 Hatua
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:56
Huyu ni mtawala rahisi wa serial kwa servos nyingi kulingana na Arduino. (yangu ya kwanza kufundishwa pia:))
Kazi nyingi katika hii zilitokana na kupata programu ya kuzungumza na arduino na kufanya itifaki ya data kupitishwa. Kwa upande wa vifaa ambavyo nilitumia ni servos mbili (Parallax standard servo hapa.) Sparkfun Arduino ProtoShield na Arduino Duemilanove iliyo na ATMEGA328, lakini sehemu hizi nyingi zinaweza kubadilishwa na vitu sawa. Nilifikiria mradi huu kama sehemu ya mfumo wa RC, lakini kuanzisha mawasiliano ilichukua muda mwingi. Ikiwa mtu yeyote ana maboresho yoyote, maoni, au mende tafadhali jisikie huru kutoa maoni. BONYEZA: Niliandika hii muda mfupi uliopita, nimeanza kuichapisha hivi karibuni.
Hatua ya 1: Vitu Unavyoweza Kuhitaji…
Vitu vingine utahitaji kujenga hii. 1. Bodi ya Arduino (unachagua) 2. servos mbili (au moja) 3. waya za kuruka 4. Studio ya Visual 2008 Express - kiungo (hiari) windows kwa sasa, lakini bado unaweza kutuma amri za serial kwa arduino bila kubadilisha nambari.
Hatua ya 2: Unganisha vifaa
Hakuna kitu ngumu sana kwa hatua hii. Unganisha servo moja kwa kubandika 9 na nyingine kubandika 10.
Hatua ya 3: Panga Arduino
sasa unaweza kupakia mchoro kwenye arduino.
Hapa kuna uharibifu rahisi wa nambari: # pamoja na Servo myservo; // tengeneza kitu cha servo kudhibiti servo Servo myservo1; int incomingByte = 0, hesabu = 0, counter = 0, tayari = 0; // kwa data zinazoingia za data ya serial [10]; const char kuthibitisha [8] = "ma11hew"; char amri [3]; kuanzisha batili () {myservo.attach (9); myservo1.ambatanisha (10); Serial. Kuanza (38400); // inafungua bandari ya serial, huweka kiwango cha data Serial.println ("Hi Arduino Hapa!"); // imeongezwa kusaidia kutambua bandari ya serial Hii inaweka tu bandari ya serial na servos. int i; kwa (i = 0; i <180; i ++) {myservo.write (i); kuchelewesha (15); } myservo.andika (5); kwa (i = 0; i <180; i ++) {myservo1.write (i); kuchelewesha (15); } myservo1.andika (5); } Harakati rahisi ya kufagia ili kudhibitisha servos hufanya kazi kwa usahihi. kitanzi batili () {ready = 0; kaunta = 0; wakati (1 == 1) {ikiwa (Serial.read ()! = thibitisha [counter]) {break; } ikiwa (counter == 6) {kuchelewesha (20); amri [0] = Serial.read (); amri [1] = Serial.read (); // if (Serial.read () == ((amri [1] * 12)% 8)) // {ready = 1; //} Serial.println ("amri iliyohifadhiwa"); } kaunta ++; kuchelewesha (2); } hii inakagua bafa ya serial kwa kamba sahihi ya idhini kisha inachukua ka mbili kwa amri. maoni kama taarifa inaruhusu checksum ya muda lakini itafanya mwingiliano wa mwingiliano kuwa mgumu. tayari inaweza kuwekwa kwa 0 kwa hivyo amri hazitagawanywa kama vile katika hali ya data iliyoharibiwa. // tafuta kupitia amri ikiwa (tayari == 1) {if (command [0] == 'T') {command [0] = 0; Serial.print ("kudhibiti kaba kwenye pini 9 hadi:"); Serial.println (ramani (amri [1], 32, 126, 2, 180), DEC); kuandika. ramani (ramani (amri [1], 32, 126, 2, 180)); } ikiwa (amri [0] == 'S') {amri [0] = 0; Serial.print ("kudhibiti kaba kwenye pini 10 hadi:"); Serial.println (ramani (amri [1], 32, 126, 2, 180), DEC); myservo1.andika (ramani (amri [1], 32, 126, 2, 180)); }}} msimbo uliobaki ni kutafuta amri kwa amri halali (T au S.) ikiwa inalingana inachukua baiti inayofuata na kuipeleka kwa servo. zaidi kwenye ramani (amri [1], 32, 126, 2, 180) baadaye… nambari hapa inaweza kupanuliwa kwa chochote kingine unachohitaji (kwa mfano taa, motors, IR, n.k.) nambari hii inapaswa kufanya kazi vizuri bila marekebisho.
Hatua ya 4: Sakinisha Programu
Nina njia mbili za kusanikisha hii … kisanidi cha nsis: Pakua kisakinishi cha kujitolea hapa chini na uifanye. Utakuwa na chaguo la kusanikisha vyanzo wakati wa usakinishaji. kifurushi cha binary cha kisakinishi kinasakinisha dlls za msingi c ++ ili iweze kuendeshwa kwenye kompyuta bila c ++ ya kuona iliyowekwa tayari. Mara kisakinishaji kitakapomalizika unaweza kukiendesha kutoka kwa eneo-kazi au kuanza menyu. zip njia (haijathibitishwa): Pakua na uendeshe, inapaswa kufanya kazi. labda. (Hifadhi ya zip ina muundo sawa wa folda iliyoundwa na kisakinishi, bila vyanzo. Sina mashine bila studio ya kuijaribu ili iweze isifanye kazi.)
Hatua ya 5: Tumia Programu ya Maingiliano
Kutumia programu kwanza chagua kiwango cha baud kilichofafanuliwa kwenye mchoro wa arduino. Mchoro ambao haujabadilishwa kuwa baud ya 38400 lakini inaweza kubadilishwa ili kukidhi mahitaji yako kwa vitu kama kiungo cha redio polepole. Kumbuka: viwango vya baud vya juu kuliko 38400 havijakaa sana, nadhani hii ni kwa sababu uart inajaza kabla data haijashughulikiwa. Ifuatayo, chagua bandari ya COM ya kutumia. chaguo-msingi la programu kwa COM4 hakikisha kuibadilisha au programu itaanguka. Mwishowe, bonyeza wazi. Ikiwa yote yameenda vizuri mpango utafungua bandari ya serial iliyochaguliwa kwa kiwango cha baud kilichochaguliwa. Ikiwa sivyo mpango labda utaanguka na ubaguzi ambao haujashughulikiwa. hakikisha bandari ni sahihi na ujaribu tena. Tumia visanduku vya maandishi kuwasilisha maagizo ya moja kwa moja kwa arduino. "Ramani (amri [1], 32, 126, 2, 180)" hupima amri zote 94 zinazowezekana, * nafasi * kupitia ~, inayosomeka na arduino katika ASCII hadi 2 hadi 180 kwa servo. baiti yoyote chini ya ASCII 32 (nafasi) au zaidi ya chaguo-msingi 126 (~) hadi 63 (?) Vizuizi vya wimbo hutoa kiolesura cha macho kwa amri za moja kwa moja. kila hatua hutuma amri ya serial kwa arduino kwa kuongezeka.
Hatua ya 6: Pata Ubunifu
Fikiria mambo mazuri ya kufanya na hii. Mawazo kadhaa: 1. Kaba ya mbali kwa gari. 2. 3D camera mount 3. rover underwater Furahiya !!
Ilipendekeza:
Mdhibiti wa Deepcool AIO RGB Arduino Mdhibiti: 6 Hatua
Mdhibiti wa Deepcool Castle AIO RGB Arduino: Niligundua kuchelewa sana kuwa ubao wangu wa mama haukuwa na kichwa cha kichwa cha rgb kinachoweza kushughulikiwa kwa hivyo niliboresha kutumia mafunzo kama hayo. Mafunzo haya ni ya mtu aliye na Deepcool Castle AIOs lakini inaweza kutumika kwa vifaa vingine vya rgb pc. KANUSHO: Ninajaribu
Mdhibiti wa Roboti ya msingi wa Matlab: Hatua 9
Mdhibiti wa Roboti wa makao ya Matlab: Tangu nilipokuwa mtoto, nimekuwa nikitamani kuwa Iron Man na bado ninafanya hivyo. Iron Man ni mmoja wa wahusika ambao kwa kweli inawezekana na kuweka tu ninatamani kuwa Iron Man siku moja hata kama watu watanicheka au wanasema haiwezekani
Intro kwa Mdhibiti Mdhibiti wa CloudX: Hatua 3
Intro kwa Microcontroller ya CloudX: Mdhibiti mdogo wa CloudX ni vifaa vya kufungua na programu-kompyuta ndogo ambayo hukuruhusu kuunda miradi yako ya maingiliano. CloudX ni bodi ndogo ya chip ambayo inaruhusu watumiaji kuiambia nini cha kufanya kabla ya kuchukua hatua yoyote, inakubali k tofauti
Mdhibiti wa Mchezo bila waya na Arduino na NRF24L01 + (msaada kwa Mdhibiti mmoja au Wawili): Hatua 3
Mdhibiti wa Mchezo bila waya na Arduino na NRF24L01 + (msaada kwa Mdhibiti mmoja au Wawili): Unaweza kupata mradi kamili kutoka kwa wavuti yangu (iko katika Kifini): https://teukka.webnode.com/l/langaton-ohjain-atmega-lla- ja-nrf24l01-radiomoduulilla / Huu ni mkutano mfupi sana kuhusu mradi huo. Nilitaka tu kuishiriki ikiwa mtu angesema
Mdhibiti mdogo wa AVR. Pulse Modulation Upana. Mdhibiti wa DC Motor na Mwangaza wa Mwanga wa LED.: 6 Hatua
Mdhibiti mdogo wa AVR. Pulse Modulation Upana. Mdhibiti wa DC Motor na Uzito wa Mwanga wa LED. Halo kila mtu! Pulse Modding Width (PWM) ni mbinu ya kawaida sana katika mawasiliano ya simu na udhibiti wa nguvu. ni kawaida kutumika kudhibiti nguvu inayolishwa kwa kifaa cha umeme, iwe ni motor, LED, spika, n.k kimsingi ni modu