Talaan ng mga Nilalaman:
- Hakbang 1: Mga Bahagi
- Hakbang 2: Server Board
- Hakbang 3: Server Coder: Kopyahin at I-paste
- Hakbang 4: Lupon ng Client
- Hakbang 5: Code ng Client: Kopyahin at I-paste
- Hakbang 6: Isang Tandaan Tungkol sa Code:
Video: Wireless Servo Control: 6 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Kinokontrol ng proyektong ito ang pag-ikot ng isang servo nang wireless sa pamamagitan ng potensyomiter (knob). Ang pag-ikot ay pinipigilan sa 180 degree.
Hakbang 1: Mga Bahagi
Ang proyektong ito ay binubuo ng
- 2 Arduino UNO controller boards na may USB konektor cable
- 2 nRF24L01 - 2.4GHz RF transceiver module (para sa tulong sa mga modyul na ito ay sumangguni sa
- 2 mga socket adapter board (backpack chips) para sa nRF24L01
- 1 opsyonal na Arduino Compatible 328 ProtoShield Prototype Expansion Board
- 1 servo
- 1 analog potentiometer
- panghinang at bakalang panghinang
- kawad
- karayom na mga ilong na pliers
- insulate na pambalot, gumamit ako ng electrical tape
Hakbang 2: Server Board
Ang server board ay binubuo ng isang module ng transceiver, ang board ng kalasag (na direktang kumokonekta sa Arduino board na isang paraan lamang), at ang servo. Napagpasyahan kong isama ang board ng kalasag upang maiwasan ang malamya na breadboard at ibigay ang proyekto at pangkalahatang mas malapit na tapusin.
Ang code at mapagkukunan ng web na kasama sa listahan ng mga detalye ng detalye ng mga koneksyon sa module ng transceiver. Nagpasya akong maghinang ng mga koneksyon sa halip na gumamit ng pansamantalang mga koneksyon tulad ng sa mga nakaraang proyekto. Dahil ako ay isang nagsisimula, pinagsama ko ang bawat pinagsamang solder na may electrical tape (hindi sila maganda).
Ang mga pin ng board ng kalasag ay tumutugma nang direkta sa mga pin ng Arduino. Bago ilakip ang board ng kalasag, kinonekta ko ang lupa at 5volt na mga pin sa board rails na may wire at solder. Naghinang din ako ng mga bahagi ng 5volt at ground wires sa riles ng board ng kalasag, pagkatapos ay sa wakas ay nakakabit ang Arduino sa board ng kalasag.
Ang servo ay nakakabit sa 3volt pin para sa lakas at digital pin 2 para sa komunikasyon.
** Tandaan: pagkatapos lamang makumpleto ang build na ito napansin ko na ang aking Arduino boards ay hindi magkapareho. Ang aking server transceiver ay pinalakas ng 5volt rail sa board ng kalasag, habang ang client transceiver ay pinalakas ng 3volt pin, bagaman pinangunahan akong maniwala na ang isang pagpapaandar ng adapter chip sa transceiver ay upang magbigay ng tamang boltahe. Ang masasabi kong sigurado lang ay ang code na ibinigay na naitugma sa pagsasaayos na ipinapakita sa mga imahe ay gumagawa ng inilarawan na epekto.
Hakbang 3: Server Coder: Kopyahin at I-paste
// SERVER CODE / * NRF24L01 Arduino CE> D8 CSN> D10 SCK> D13 MO> D11 MI> D12 RO> Hindi ginamit GND> GND VCC> 5V * / // transceiver wiring
# isama
// servo library
# isama
// library ng transceiver
# tukuyin ang Servopin 2
// deklarasyon servo output pin
ServoTimer2 serv;
// pagdedeklara ng pangalan ng servo
RH_NRF24 nrf24;
// pagdedeklara ng pangalan ng transceiver
int timeOUT = 0;
// variable para sa servo
int pulses = 90;
// variable upang mag-imbak ng mga pulso
walang bisa ang pag-setup ()
{serv.attach (Servopin); // servo bagay
Serial.begin (9600); // transceiver bagay
kung (! nrf24.init ())
Serial.println ("nabigo ang init"); // serial monitor stuff if (! nrf24.setChannel (12)) // set channel to 125 Serial.println ("setChannel failed"); kung (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("Nabigo ang setRF"); // serial monitor stuff}
walang bisa loop ()
{if (nrf24.available ()) {uint8_t buf [RH_NRF24_MAX_MESSAGE_LEN]; uint8_t len = sizeof (buf); kung (nrf24.recv (buf, & len)) // serial monitor bagay {Serial.print ("got request:"); pulses = strtol ((const char *) buf, NULL, 10); // mga uri ng pagbabago sa uri ng data
int prin = mapa (pulso, 750, 2250, 0, 180); // uri ng data baguhin ang mga bagay-bagay
Serial.println (prin); serv.write (pulses); // ginagawang ilipat ang servo}}
}
Hakbang 4: Lupon ng Client
Ang board ng kliyente ay binubuo ng isang module ng transceiver at potensyomiter. Ang module ng transceiver ay wired sa parehong paraan ** tulad ng server board na may pagbubukod na wala ang board ng kalasag, direktang ito ay naka-wire sa mga pin ng board ng Arduino.
Ang potensyomiter ay tumatagal ng 5v, ground, at nakakonekta sa analog pin 2.
** Tandaan: tulad ng nabanggit sa hakbang ng server board, ang aking mga board ng Arduino ay hindi magkapareho. Sa kasong ito ang transceiver ay naka-wire sa pin na may label na 3.3V, direktang katabi ng 5V pin, ngunit muli, ang lahat ay tila gumagana nang maayos.
Hakbang 5: Code ng Client: Kopyahin at I-paste
// CLIENT CODE / * NRF24L01 Arduino CE> D8 CSN> D10 SCK> D13 MO> D11 MI> D12 RO> Hindi ginamit GND> GND VCC> 5V * / // transceiver wiring
# isama
// library ng transceiver
int potpin = A2; // delensyal ng potensyomiter
int val;
char tempChar [5];
String valString = ""; // uri ng data baguhin ang mga bagay-bagay
RH_NRF24 nrf24; // transceiver bagay
walang bisa ang pag-setup ()
{Serial.begin (9600); kung (! nrf24.init ()) Serial.println ("init failed"); // Defaults after init are 2.402 GHz (channel 2), 2Mbps, 0dBm if (! Nrf24.setChannel (12)) Serial.println ("setChannel failed"); kung (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("Nabigo ang setRF"); } // transceiver bagay
void loop () {
val = analogRead (potpin); // potentiometre na bagay
val = mapa (val, 0, 1023, 750, 2250);
valString = val; String str = (valString); str.toCharArray (tempChar, 5); // datatype baguhin ang mga bagay-bagay nrf24.send (tempChar, sizeof (tempChar));
}
Hakbang 6: Isang Tandaan Tungkol sa Code:
Naglalaman ang Code ng ilang limitadong pag-andar ng pag-troubleshoot sa anyo ng puna mula sa serial monitor sa interface ng Arduino software. Kapag tinitingnan ang serial monitor mula sa SERVER code (ctrl + shift + M), dapat mong makita ang estado ng potensyomiter sa anyo ng isang numero sa pagitan ng 1 at 180.
Gayundin, narito ang library para sa wireless at servo:
www.airpayce.com/mikem/arduino/RadioHead/
github.com/nabontra/ServoTimer2
Inirerekumendang:
Wireless Arduino Robot Gamit ang HC12 Wireless Module: 7 Mga Hakbang
Wireless Arduino Robot Gamit ang HC12 Wireless Module: Hey guys, maligayang pagdating pabalik. Sa aking nakaraang post, ipinaliwanag ko kung ano ang isang H Bridge Circuit, L293D motor driver IC, piggybacking L293D Motor driver IC para sa pagmamaneho ng mataas na kasalukuyang mga driver ng motor at kung paano mo mai-disenyo at gumawa ng iyong sariling L293D motor Driver Board,
Limampung Meter Saklaw ng Wireless Access Point Sa TP Link WN7200ND USB Wireless Adapter sa Raspbian Stretch: 6 Hakbang
Fifty Meters Range Wireless Access Point Sa TP Link WN7200ND USB Wireless Adapter sa Raspbian Stretch: Ang Raspberry Pi ay mahusay na lumikha ng Secure Wireless Access Points ngunit wala itong magandang saklaw, gumamit ako ng isang TP Link WN7200ND USB Wireless Adapter upang mapalawak ito. Nais kong ibahagi kung paano ito gagawin Bakit ko nais na gumamit ng isang raspberry pi sa halip na isang router? T
DIY Wireless Mic to Wireless Guitar System: 4 na Hakbang
DIY Wireless Mic to Wireless Guitar System: Nanonood ako ng ilang mga vids at ilang mga banda at halos sa mga ito ay gumagamit ng isang wireless system sa gitara. Nababaliw, gumagalaw, naglalakad at gawin ang anumang nais nila nang walang kurdon kaya't nangangarap akong magkaroon ng isa .. Ngunit .. para sa akin ngayon ay masyadong mahal kaya napunta ako dito
Mag-hack ng isang Wireless Doorbell Sa isang Wireless Alarm Switch o On / off Switch: 4 Hakbang
Mag-hack ng isang Wireless Doorbell Sa isang Wireless Alarm Switch o On / off Switch: Nagtayo ako kamakailan ng isang sistema ng alarma at na-install ito sa aking bahay. Gumamit ako ng mga magnetic switch sa mga pintuan at pinagsama ang mga ito sa attic. Ang mga bintana ay isa pang kuwento at ang matigas na mga kable sa kanila ay hindi isang pagpipilian. Kailangan ko ng isang wireless solution at ito ay
I-convert ang Wireless Router sa sa Wireless Extender 2x Access Point: 5 Hakbang
I-convert ang Wireless Router sa Wireless Extender 2x Access Point: Nagkaroon ako ng hindi magandang koneksyon sa internet sa aking bahay dahil sa isang RSJ (metal support beam sa kisame) at nais na mapalakas ang signal o magdagdag ng isang labis na extender para sa natitirang bahay. Nakita ko ang mga extender para sa paligid ng £ 50 sa isang electro