Jeg laver ofte robotter eller legetøj baseret på Arduino eller lignende plader. Som en mulighed for at kontrollere sådanne enheder bruger jeg det infrarøde område. Med hensyn til modtageren er der ingen problemer, det er let at finde og tilslutte, men i tilfælde af fjernbetjening er det vanskeligere.
Og her er to muligheder:
1. Brug fjernbetjeningen fra tv'et eller andet udstyr, der er til rådighed. Så er der meget ståhej, problemer, og det tager meget tid. Først skal du læse knapkoderne fra fjernbetjeningen og derefter skrive dem til din firmware. Et andet problem er, at fjernbetjeningen sender et signal, når knapperne trykkes en gang, ikke gentager det (hvis enheden bevæger sig eller er langt væk, modtageren muligvis ikke læser det ad gangen), og sender ikke noget, når knappen slippes, hvilket er meget upraktisk, når det er nødvendigt at kontrollere bevægende maskiner. Nå, jeg vil ikke styre tv'et og maskinen på samme tid.
2. Lav din egen fjernbetjening.
Dette er den anden vej, jeg går. Som grundlæggende brugte jeg den gamle joystick fra Sega-konsollen. Der er alt hvad du har brug for der. Fire pile (praktisk til kontrol af biler) og 8 knapper.
Så hvad vi har brug for:
- joystick fra Sega
- Arduino Pro Mini 3.3v 8MHz
- USB-TTL
- 2 Ni-Mn-batterier 1,2v 1000mA
- IR LED
- Rød LED
- Blå LED
- modstand 2x75Om, 2x5Om, 1x2Om
se-off
- PLSx5-stik "mor"
- varm lim
- ledninger
- batterirum 4xAAA
- flerfarvede ledninger
- loddejern, lodning, harpiks
- lige arme
Trin 1 Lodde
Vi adskiller vores joystick, fjerner brættet fra det og lodder alle ledninger fra det. Dernæst skal du tage en klerisk kniv eller bare en skarp kniv og klippe alle sporene fra controlleren på tavlen, så det ikke forstyrrer os og ikke kommer i konflikt med Arduino. I nærheden af hver knap er der en lille cirkel med bare spor. Efter at have taget et loddejern er det nødvendigt at lodde til hvert krus langs wiren samt finde en fælles tråd til lodning og en tråd til den (almindelig, sort). Indpakning af ledningerne skal se sådan ud:
På bagsiden, på et dobbeltsidet tape limer vi vores Arduino. En lille digression om valget af Arduino. I princippet kan du bruge ethvert bræt, det vigtigste er, at det passer ind i joysticket.
Lodde vores motiver i henhold til følgende skema
Joystick Arduino
Pil op 2
Pil ned 4
Venstre pil 5
Højre pil 6
Knap A 8
B-knap 10
C-knap 7
X-knap 12
Y-knap 11
Z-knap 9
Start 14-knap (A0)
Nulstil RST-knap
IR LED + 3
Generisk GND
Blå LED
gennem en 75 ohm rå modstand
Rød LED
gennem modstanden 75 Om + 5-stik
Lad mig forklare: Jeg lodede alle knapper, da de bekvemt var ved hjælp af tråd, hvis de er blandet, skal du bare fikse dem i syningen. Den vigtigste IR-positive kontakt skal loddes til 3! Husk at lodde minus IR til GND. Reset-knappen er nødvendig for at genstarte Arduino med firmware.
Trin 2 sagtilstand
Det er nødvendigt at overveje en konklusion af ledninger til tilslutning af USB-TTL. Jeg brugte stikket på 5 PLS "mor". Han lavede en plads i passende størrelse i højre side af joysticket, indsatte stikket og fyldte alt med varmt lim. + 5v fra dette stik i øjeblikket, skriv bare ledningen. TX til RX Arduino, henholdsvis RX til TX. + 3.3v til 3.3 Arduino, GND til GND Arduino. Han lavede en plads i passende størrelse i højre side af joysticket.
For at indikere inkluderingen af fjernbetjeningen og batteriopladningen er det nødvendigt at bore to huller med en diameter på 5 mm foran joysticket og indsætte lysdioderne der. Og skære også et hul til kontakten.
På indersiden skal du fylde dioderne og switchene med varm lim.
Trin 3 ernæring
Så der er to muligheder for ernæring. Jeg gjorde begge dele, men du kan vælge den passende og bruge en.
Det første batteri er drevet. For at gøre dette, loddes to NI-MN-batterier i serie, til profferne gennem afbryderen, lodde den næste 5Om + 5Om + 2Om + Diode og til +5 af vores stik sekventielt, er dette til opladning fra USB-TTL. Vi pakker den resulterende pigge fra dioden og modstande med elektrisk tape og lægger det øverste højre hjørne. Parallelt loddes vores røde LED gennem en 75 Om-modstand for at indikere en opladning. Afbryderens anden position er arbejdstråden fra den går til RAW Arduino og igen parallelt, denne gang en blå LED gennem en 75Om modstand. Minus direkte til GND Arduino.
Batterierne er placeret øverst på joysticket og skal limes
Næste op er manipulationerne med Arduino. Faktum er, at spændingen på 2,4 volt er lille, og for at starte vores controller skal du ændre sikringsbitene til Arduino. Detaljerede instruktioner vedrørende firmware til bootloader og sikringsbits er uden for dette emne, og Internettet er fuld af ordninger og muligheder. Hovedresultatet her er at deaktivere Arduino strømstyring. Her er ICSP Arduino Pro Mini udstiksdiagram.
Den anden mulighed er enklere og kræver ikke yderligere manipulationer med Arduino. Lodde til kontakten den positive ledning fra vores batterirum minus til GND Arduino. Vi bringer ledningerne ud ved at lave et lille klip i etuiet og lim rummet til bagcoveret på joysticken på et dobbeltsidet bånd. Det bliver sådan:
Det ser ikke særlig smukt ud, men det er hurtigere og har færre problemer.
Trin 4 Montering
Så vi fik følgende konstruktion:
Ved montering er det nødvendigt at lægge ledningerne, så de ikke bliver bidt af de indvendige dele af joysticket. Jeg lykkedes ikke med det samme, men efter fem forsøg vil alt ordne sig. Her er min fjernbetjeningsenhed.
Trin 5 firmware
Vores fjernbetjening blinkes gennem et stik, der er tilsluttet USB-TTL, og opladning sker også gennem det. Glem ikke at trykke på Nulstil, når du hælder roden.
Når jeg skrev firmwaren, skrev jeg et tilfældigt sæt numre (koder) for hver kommando (knap). Jeg bruger disse koder, når jeg skriver firmwaren til en administreret enhed. Koder sendes tre gange, hvilket fjerner muligheden for at springe en kommando over. Når du slipper knappen, sendes der også en kode, der bruges til at stoppe den administrerede enhed.