Jag fortsätter att modellera och bygga robotar. Jag skrev redan instruktioner för att skapa en fjärrkontroll modeller och robotar. Fjärrkontrollen är baserad på den gamla Sega-joysticken. Denna joystick har fyra pilar och 8 knappar, tillräckligt för att kontrollera en maskin eller en liten robot. Hanteringen utfördes med hjälp av en IR-LED. Idag kommer jag att skriva instruktioner för modernisering av denna fjärrkontroll, nämligen omvandlingen av den till en Bluetooth-fjärrkontroll. Beroende på vilken Bluetooth-modul som används kommer fjärrkontrollen antingen att ansluta till den förprogrammerade enheten eller så kommer det att vara möjligt att ansluta till fjärrkontrollen. Jag kommer att beskriva båda alternativen. Vi kommer att behöva:
- Joystick från Sega
- Arduino Pro Mini 3.3v 8MHz
- USB-TTL
- 2 Ni-Mn-batterier 1,2v 1000mA
- Bluetooth-modul HC-05 eller HC-06
- Röd LED
- Blå LED
- Motstånd 2x75Om, 2x5Om, 1x2Om
- Anslutning PLSx5 "mamma"
- Hett lim
- ledningar
- 4xAAA batterifack
- Flerfärgade ledningar
- Lödkolv, löd, kolofonium
- raka armar
Steg 1 Välja en Bluetooth-modul
Två moduler krävs för kommunikation. Vi sätter in en i fjärrkontrollen, och den andra kommer vi att ansluta till skrivmaskinen eller roboten. Det finns ett stort antal Bluetooth-moduler. De skiljer sig åt i funktioner och stöds kommunikationsprotokoll. En lista över moduler som finns:
- HC-03, HC-04 (HC-04-M, HC-04-S) på BC417143-chipet;
- HC-05, HC-06 (HC-06-M, HC-06-S) på BC417143-chipet;
- HC-05-D, HC-06-D;
- HC-07 - modul med ett CSR 41C6-chip;
- HC-08 - modul med extremt låg energiförbrukning och Bluetooth 4.0-protokoll;
- HC-09 är den senaste modulen utformad för att ersätta HC-06 och HC-07.
Jag bosatte mig på två moduler HC-05 och HC-06, eftersom de är optimala vad gäller pris / funktionalitet. De stöder kommunikationsprotokollet - Bluetooth Specification v2.0 + EDR. Räckvidden är upp till 10 meter (effektnivå 2). Kompatibel med alla Bluetooth-adaptrar som stöder SPP. Volym av flashminne (för att lagra firmware och inställningar) är 8 Mbit. De arbetar med en frekvens av en radiosignal - 2,40 .. 2,48 GHz. Värdgränssnittet är USB 1.1 / 2.0 eller UART. De har låg energiförbrukning - strömmen under kommunikationen är 30-40 mA. Det genomsnittliga nuvarande värdet är cirka 25 mA. Efter att anslutningen har upprättats är den förbrukade strömmen 8 mA. Dessa moduler är lätta att hitta, de är de vanligaste. Modulerna är väldigt lika, men huvudskillnaden mellan dem är att HC-05 kan fungera både i masterläge och i slavläge.HC-06 kan bara vara en slav. Enkelt uttryckt kan HC-06 inte upptäcka en parad enhet och upprätta en anslutning med den, den kan bara lyda befälhavaren. Modulerna säljs som två brädor lödda tillsammans. Den mindre är fabriksmodulen. Stor - en speciell brödskiva för DIY. Det ser ut som ett mindre kort med ett BC417-chip:
Och så gör DIY-modulerna HC-05 och HC-06 själva:
Du kan köpa en modul utan en brädskiva. Det kostar lite billigare, men då måste du installera en 3,3 V spänningsregulator för modulen. Avståndet mellan kontakterna är också litet och du måste plåga dig själv genom att lödas till trådmodulen.
För att upprätta kommunikation mellan fjärrkontrollen och roboten eller maskinen måste du konfigurera två Bluetooth-moduler ovanpå varandra. I detta fall konfigurerar vi HC-05-modulen så att den hittar och ansluter till HC-06.
Steg 2 Konfigurera HC-06.
Först måste du ansluta HC-06 till datorn. Detta kan göras genom att ansluta modulen via en USB-UART-adapter. I detta fall är anslutningen enligt följande:
Bluetooth - USB-UART
TX - RX
RX - TX
VCC - +5
GND - GND
Om du inte har USB-UART till hands kan du skriva följande skiss till valfritt Arduino-kort:
Anslut enligt följande:
Bluetooth - Arduino
TX - stift 2
RX - stift 3
VCC - +5
GND - GND
Sedan öppnar vi alla terminalprogram, välj den comport som HC-06 är ansluten till, standardhastigheten är 9600, NL och CR behövs inte. Om en Bluetooth-anslutning inte upprättas med HC-06, är modulen i läget för att ange AT-kommandon. Om modulen inte svarar kan du prova att överbelasta den genom att koppla bort den positiva kabeln och ansluta den igen. Och ange följande kommandon:
"AT" - utan citat bör svaret "OK" komma.
“AT + ADDR” - med detta kommando kommer vi att ta reda på den unika adressen till HC-06, skriv ner denna adress
"AT + BAUD7" - ställ in hastigheten till 57600
"AT + RESET" - vi överbelasta modulen
Följande kommandon behöver inte anges, men bara för att det är bättre att känna till dem:
"AT + NAME
“AT + ORGL” - återställer modulen till fabriksinställningar
Detta slutför installationen av HC-06.
Steg 3 Konfigurera HC-05.
Vi ansluter modulen på liknande sätt till HC-06. Därefter öppnar du något terminalprogram, välj com-porten som USB-UART eller Arduino hänger på, fabrikens standardkommunikationshastighet är 9600, men jag träffade också med en hastighet på 38400, om du inte ändrade den, välj 9600, du kan inte ansluta, ändra till 38400. Även Det är värt att inkludera parametrarna NL och CR. För att överföra AT-kommandoinmatningsläge måste du trycka på knappen på HC-05-kortet och sedan ange följande:
"AT" - anges utan citattecken, svaret "OK" ska komma. Om du kommer fortsätter vi att skriva in kommandon vidare.
“AT + ROLE = 1” - med detta kommando ställer vi in modulens roll med siffran:
0 - slav, 1 - mästare, 2 - slav i cykeln *. Du bör få svaret "+ ROLE: 1 \ r \ n" eller "OK"
“AT + CMODE = 0” - modulen i rollen som befälhavaren är endast ansluten till Bluetooth-enheten vars adress indikeras av kommandot “AT + BIND”.
“AT + BIND: 1234,56,123456” - för att upprätta en anslutning till din HC-06 måste du ange dess adress här. Efter att alla kommandon har skrivits in är modulen i rollen som master (ROLE = 1) och anslutningsläget till den fasta adressen (CMODE = 0) är inställt, den kommer bara att ansluta till Bluetooth-enheten vars adress anges av det här kommandot. Delar av adressen matas in: under installationen - separerade med komma och när de besvaras - genom en kolon. Du får svaret: "+ BIND: 1234: 56: 789ABC \ r \ n" eller "OK"
“AT + UART = 57600,0,0” - ställ hastigheten på 57600 bps, stoppbiten representeras av siffran: 0 - en, kontrollen representeras av siffran: 0 - utan verifiering
Om du är förvirrad över modulinställningarna eller om den slutar fungera korrekt kan du prova följande kommando:
“AT + ORGL” - Modulen återställer följande inställningar CLASS = 0, IAC = 9e8b33, ROLE = 0, CMODE = 0, UART = 38400,0,0, PSWD = 1234, NAME = hc01.com.
Och konfigurera sedan de inställningar du behöver.
På detta sätt har vi skapat en stark koppling mellan HC-05 och HC-06. När HC-05-modulerna är påslagen kommer den att upprätta en anslutning till HC-06. Av personlig erfarenhet kan jag säga att det är bättre att starta HC-05 först och sedan HC-06. Om anslutningen går förlorad måste du överbelasta båda modulerna.
Steg 4 Förbereda fjärrkontrollen.
Detta steg beskrivs i detalj i de tidigare instruktionerna på:
https://svm.imdmyself.com/8626-ik-pult-iz-dzhoystika-ot-sega.html
Det är nödvändigt att utföra steg 1 till 4. Lödning av IR-dioden är valfri, även om den inte stör.
Steg 5 Ansluta en Bluetooth-modul.
Jag rekommenderar att du installerar HC-06 på fjärrkontrollen. För att ändra modulens inställningar behöver du bara fylla i motsvarande skiss i Arduino Pro Mini. När det gäller HC-05 måste du demontera konsolen för att trycka på knappen för att växla till AT-kommandoläge.Vi ansluter allt enligt följande schema
Joystick - Arduino
Pil upp - stift 2
Nedåtpilen - stift 4
Vänsterpil - stift 5
Högerpil - stift 6
Knapp A - stift 8
Knapp B - stift 10
C-knapp - stift 7
X-knapp - stift 12
Y-knapp - stift 11
Z-knapp - stift 9
Startknapp - stift 14 (A0)
Återställningsknapp - RST
Allmänt - GND
Bluetooth - Arduino
TX - stift 16 (A2)
RX - stift 17 (A3)
VCC - + 5
GND - GND
HC-05 vi ansluter till din skrivmaskin eller robot som du kommer att kontrollera. Anslutningsalternativ och skisser finns i mina andra instruktioner. När du skriver en robotskiss måste du ställa in anslutningshastigheten till 57600 och använda SoftwareSerial-biblioteket i skissen.
Steg 6 Förbereda miljön och firmware.
Det bästa sättet att skriva och redigera en skiss är att använda Arduino IDE. Arduino IDE-versionen får inte vara lägre än 1,8. Ladda ner Arduino IDE från den officiella webbplatsen:
https://www.arduino.cc/en/Main/Software
Sedan måste du lägga till biblioteket till Arduino IDE. Skissen använder ett SoftwareSerial.h-bibliotek (för kommunikation med Bluetooth-modulen):
Du måste ladda ner och installera det. Du kan installera biblioteket genom att packa upp arkivet och flytta de packade filerna till mappen ”bibliotek” som finns i mappen med Arduino IDE installerat. Eller så kan du använda det inbyggda verktyget för att lägga till biblioteket - utan att packa upp det nedladdade arkivet, välj Sketch - Connect Library-menyn i Arduino IDE. Överst på listrutan väljer du objektet "Lägg till. Zip-bibliotek". Och ange platsen för det nedladdade arkivet. När du har installerat biblioteket måste du starta om Arduino IDE.
Vår fjärrkontroll blinkar på samma sätt som den tidigare versionen av fjärrkontrollen, ansluten via USB-TTL via ett kontaktdon, laddning sker också genom den. När du fyller i skissen klickar du på Återställ.