En enkel Bluetooth-maskin på Arduino. Montering av en radiostyrd leksaksbil med Arduino


Arduino maskin med Bluetooth-kontroll från Android telefonär ett mycket enkelt men intressant projekt på Arduino UNO med hjälp av Motor Shield-modulen. På den här sidan kommer du att ta reda på vilka komponenter du behöver för att göra en robotmaskin på Arduino med dina egna händer, steg för steg instruktioner på att montera en elektrisk krets och du kan ladda ner allt nödvändiga program för Android och Arduino.

Video. Arduino-styrd bluetooth-maskin

För detta projekt använde vi en Motor Shield L293D-modul, två växlade hjul, ett Arduino UNO-kort, en HC-05 Bluetooth-modul och två lysdioder för strålkastarna. Styrning sker på distans via en Bluetooth-signal från en smartphone eller surfplatta. Efter att ha monterat ihop modellen och installerat programmen kan du använda appen på din smartphone för att vända bilen, köra framåt och bakåt samt tända och släcka strålkastarna.

DIY Arduino maskin

För detta projekt kommer vi att behöva:

  • Arduino UNO-bräda;
  • Motorkontrollskärm L293D;
  • Bluetooth-modul HC-05/06;
  • två motorer med växellådor och hjul;
  • 9V batteri (krona);
  • 2 motstånd och 2 lysdioder;
  • kaross och hjul från en gammal bil;
  • lödkolv, smältpistol, verktygskniv;
  • ledningar, lod och eltejp.
Delar till roboten - bilar på Arduino UNO

Arduino maskinmonteringsdiagram

Om du har alla nödvändiga delar (du kan klara dig utan lysdioder och motstånd i projektet), så kommer vi att titta på hur man gör en Arduino-maskin med dina egna händer. Först bör du löda ledningar till motorernas kontakter och säkra dem med eltejp så att kontakterna inte lossnar. Ledningarna måste anslutas till plintarna M1 och M2 på motorskärmen (polariteten kan ändras senare).


Ström till Bluetooth-modulen kommer från kontakterna för servoenheten; vi behöver inte servon i projektet. Och strömförsörjningen är en stabiliserad spänning på 5 Volt, vilket passar oss. Det skulle vara bekvämare att löda honkontakter till TX- och RX-portarna och lödstift (BLS) till Pin0- och Pin1-portarna på motorskölden. På så sätt kan du enkelt koppla bort Bluetooth-modulen från Arduino när du behöver ladda upp en skiss.

Lysdioderna styrs från "Pin2"-porten här kan tråden lödas direkt till porten. Om du tillverkar flera maskiner med Bluetooth som du kommer att styra samtidigt rekommenderar vi att du blinkar med HC-05-modulen. Att blinka modulen är väldigt enkelt, och då kommer du inte längre att förvirra maskinerna, eftersom var och en kommer att visa sitt eget unika namn på Android.

Applikation och skiss för en Arduino-maskin

Efter att ha monterat kretsen, ladda ner följande skiss för maskinen (glöm inte att koppla bort Bluetooth-modulen från Arduino när du laddar ner) och installera applikationen på din smartphone. Alla filer för projektet (AFMotor.h bibliotek, skiss för bilen och Android-applikation) kan laddas ner i ett arkiv med en direktlänk.

#omfatta // anslut biblioteket för skölden AF_DCMotormotor1(1); // anslut motorn till plint M1 AF_DCMotormotor2(2); // anslut motorn till M2 plint int val; // frigör minne i styrenheten void setup() (Serial.begin(9600); pinMode(2, OUTPUT); // Port för lysdioder motor1.setSpeed(250); motor1.run(RELEASE); // stoppa motorn motor2.setSpeed(250); // ställ in maximal motorhastighet motor2.run(RELEASE); // stoppa motorn) void loop () ( om (Serial . tillgänglig ()) // kontrollera om några kommandon tas emot( val = Serial .read (); if (val == "f") ( // gå framåt motor1.run (FRAM); motor1.setSpeed ​​​​(250); motor2.run (FORWARD); motor2.setSpeed ​​​​(250) ; ) if (val == "b") ( // gå tillbaka motor1.run (BACKWARD); motor1.setSpeed​(200); motor2.run (BACKWARD); motor2.setSpeed​(200) ); ) if (val == "s") ( // sluta motor1.run(RELEASE); motor2.run(RELEASE); ) if (val == "l") ( // sväng vänster motor1.run(FRAMÅT); motor1.setSpeed(100); motor2.run(BACKWARD); motor2.setSpeed(250); ) if (val == "r") ( // sväng höger motor1.run(BACKWARD); motor1.setSpeed(250); motor2.run(FRAMÅT); motor2.setSpeed(100); ) if (val == "1") ( // slå på lysdioderna digitalWrite(2,HIGH); ) if (val == "0") ( // stäng av lysdioderna digitalWrite(2,LOW); ) ) )

Förklaringar till koden:

  1. För testning kan du skicka kommandon från din dator via USB;
  2. Motorernas rotation när de är anslutna till batteriet kommer att vara annorlunda;
  3. Du kan ställa in din egen rotationshastighet med motorerna.

Efter att ha kontrollerat maskinens funktion, installera applikationen på din smartphone eller surfplatta. När du först ansluter till Bluetooth-modulen HC-05/06 måste du para ihop med Android (då kommer ihopparningen att utföras automatiskt). Om du har svårt att ansluta, läs den här artikeln

Men också från köpet av en färdig, fullfjädrad robot baserad på denna bräda. För grundskole- eller förskolebarn är sådana färdiga Arduino-projekt till och med att föredra, eftersom Den "enanimerade" tavlan ser lite tråkig ut. Den här vägen Den passar även den som inte är särskilt attraherad av elektriska kretsar.

Genom att köpa en fungerande robotmodell, d.v.s. i själva verket kan en färdig högteknologisk leksak väcka intresset för att självständigt designa och skapa robotar. Efter att ha spelat tillräckligt med en sådan leksak och förstått hur den fungerar, kan du börja förbättra modellen, ta isär allt och börja montera nya projekt på Arduino, med hjälp av det frigjorda kortet, enheterna och sensorerna. Öppenheten i Arduino-plattformen gör att du kan göra nya leksaker av samma komponenter.

Vi erbjuder en liten översikt över färdiga robotar på Arduino-brädet.

Arduino-maskin styrd via Bluetooth

Bilen styrs via Bluetooth, kostar strax under 100 dollar. Levereras omonterad. Utöver fodral, motor, hjul, litiumbatteri och laddare får vi ett Arduino UNO328-kort, motorkontroll, Bluetooth-adapter, fjärrkontroll med mera.

Video med denna och en annan robot:

En mer detaljerad beskrivning av leksaken och möjligheten att köpa den på webbplatsen för DealExtreme onlinebutik.

Arduino Turtle Robot

Robotsköldpadda monteringssats kostar ca $90. Det enda som saknas är skalet, allt annat som behövs för den här hjältens liv ingår: Arduino Uno-kort, servon, sensorer, spårningsmoduler, IR-mottagare och fjärrkontroll, batteri.

Sköldpaddan kan köpas på DealExtremes hemsida, en liknande billigare robot finns på Aliexpress.

Arduino bandvagn styrd från en mobiltelefon

Bandfordon styrs via Bluetooth mobiltelefon , kostar $94. Utöver spårbasen får vi ett Arduino Uno-kort och ett expansionskort, ett Bluetooth-kort, ett batteri och en laddare.

Bandfordonet kan också köpas på DealExtremes hemsida, ibid. detaljerad beskrivning. Kanske en mer intressant järn Arduino tank på Aliexpress.

Arduino bil som kör genom labyrinter

Bil som kör genom labyrinter, kostar $83. Förutom motorer, Arduino Uno-kortet och andra nödvändiga föremål, innehåller det spårningsmoduler och moduler för att undvika hinder.

Färdig robot eller ram för en robot

Utöver det användningsfall som diskuterades i recensionen färdiga kit för att skapa Arduino-robotar kan du köpa en separat robotram (kropp) - det kan vara en plattform på hjul eller en larv, en humanoid, en spindel och andra modeller. I det här fallet måste du göra stoppningen av roboten själv. En översikt över sådana fall ges i vårt.

Var annars kan man köpa färdiga robotar?

I recensionen valde vi det billigaste och mest intressanta enligt vår mening färdiga Arduino-robotar från kinesiska nätbutiker. Om du inte har tid att vänta på ett paket från Kina - stort val färdiga robotar i nätbutikerna Amperka och DESSY. Låga priser Och snabb leverans erbjuder onlinebutik ROBstore. Lista över rekommenderade butiker.

Du kanske också är intresserad av våra recensioner av Arduino-projekt:


Arduino träning

Vet du inte var du ska börja lära dig Arduino? Fundera på vad som ligger närmast dig - att montera ditt eget enkla modeller och deras gradvisa komplikation eller bekantskap med mer komplexa men färdiga lösningar?

Maskin på arduino och Bluetooth utan kodredigering. Vi kommer att använda specialiserad gratis programvara för att skapa skissen. Dessutom behöver du inte köpa ett chassi till vår båt, nästan vilken som helst felaktig radiostyrd modell av en bil eller tank.

Jag föreslår att du tittar på en översiktsvideo om den Bluetooth-styrda maskinen och dess innehåll.

Så låt oss titta på ett levande exempel på hur man gör en fjärrkontroll via bluetooth c med dina egna händer. android surfplatta eller en smartphone skrivmaskin. Artikeln är märkligt nog avsedd för Första nivån kunskap. Det finns ingen guide för redigering av kod i Arduino IDE, och vi kommer bara att använda den för att fylla i vår kod. Och vi kommer att komponera kontrollalgoritmen i ett program som heter FLProg. Styrprogram från en smartphone - HmiKaskada_free. Men först, om hårdvaran vi behöver.

Maskin på arduino och Bluetooth - hårdvara.

Det första du behöver är chassi, det vill säga en kropp med hjul och motorer, som ska driva till glädje för oss och de omkring oss. I mitt fall är fallet från radiostyrd leksak där kraftdelen brann ut. Utsikten till renovering verkade tråkig för mig, och jag ville ha något nytt för mina barn. Det var så detta projekt föddes. Kroppen innehåller två motorer som driver hjulen på sidorna av maskinen, som en tank. Alla elektroniska komponenter skickades för reservdelar.

För att kontrollera elmotorerna i vår framtida skapelse kommer vi att behöva H-brygga på L298N-chip Länk till Ali, jag tog den här från. Bilden är klickbar.

H-bro för arduino

Kan styra två motorer i spänningsområdet 5 - 35 volt. Stöder PWM, det vill säga du kan justera motorvarvtalet. Kortet har en stabiliserad spänningsutgång på 5 volt för att driva Arduino.

Anslutningsschemat är enkelt och opretentiöst:

Nästa integrerade del av den elektroniska fyllningen av vårt projekt är bluetooth-modul HC-06. Den vanligaste modulen för Arduino, så populär att i ytterligare beskrivning behöver inte.

HC-06 bluetooth för arduino

Huvudelementet och hjärnan i mitt fall är arduino nano, jag kommer inte ens lägga upp bilder här eftersom alla vet om det och vet hur man arbetar med det. Förresten, vilken Arduino-bräda som helst duger, så länge den får plats i fodralet 😀

Batterier och lödtrådar kräver ingen specifikation. Valet av batterier beror på elmotorernas driftspänning.

Maskin på arduino och Bluetooth - ritar en skiss.

Jag upprepar - det kommer inte att grävas i koden här. Vi kommer använda populärt program FLProg. Ladda ner det senaste versionen tillgänglig på den officiella webbplatsen. Programmets gränssnitt är enkelt och opretentiöst, men det har enorm funktionalitet och stöd för nästan alla populära moduler. Jag kommer inte att skriva hur man använder det eftersom det skulle ta ett par artiklar. Låt mig bara säga att jag aldrig har träffat en mer bekväm och tillgängligt program för att göra skisser för arduino och dess kloner. Gränssnittsskärm:

FLProg-gränssnitt

Webbplatsen är full av text- och videomanualer, jag tror att du kommer att ta reda på det.

Mitt projekt för en fjärrstyrd bil kan laddas ner från Yandex disk via länkförkortningstjänsten.

Maskin på arduino och Bluetooth - kontrollgränssnitt på en Android-surfplatta.

På populär begäran skrev jag detaljerade instruktioner om att utveckla ett kontrollgränssnitt baserat på HmiKaskada android i artikeln. Länken är klickbar.

För enheter under android kontroll det finns ett program HmiKaskada (länk till YandexDisk). Den utvecklades ursprungligen som ett alternativ till dyra industriella HMI-paneler. Men nyfikna hjärnor insåg snabbt att hon kunde kontrollera vad som helst. I vårt fall en skrivmaskin. Stöder trådlösa gränssnitt Wi-Fi och Bluetooth, dessutom kan du ansluta enheten direkt via USB.

Det finns betal- och gratisversioner av programmet. Jag har båda men jag gjorde i princip projektet in gratis version för att visa dig och återigen se till att det fungerar absolut gratisversioner. Den största skillnaden mellan gratis och PRO-versioner Detta fungerar endast via bluetooth.

Det finns en jättetråd på FLProg-forumet angående kompatibilitet med KaScada, och utvecklaren är aktiv och sällskaplig. Jag ser ingen mening med att lägga upp en skärmdump av kontrollpanelen - det finns i videon.

Den huvudsakliga informationskällan är easyelectronics.com

En arduino räcker inte här. Du behöver också:
-effektmoduler för styrning av motorer och lampor
-strömförsörjningsmodul
-kommunikationsmodul

Arduino är bara hjärnor, och ganska bräckliga sådana.

Frågan om motorns kompatibilitet med Arduino är inte mycket meningsfull. Faktum är att nästan ingen motor kan kopplas direkt till Arduino, den kommer att brinna ut.
Det kommer att finnas en mellanhand mellan arduinon och motorn - en kraftmodul. Tack vare detta är Arduino praktiskt taget kompatibel med alla motorer.

Angående "var man kan köpa" - antingen nätbutiker eller butiker elektroniska komponenter. Sök med sökning i din stad. I stora städer kan du köpa allt på ett ställe, men du kommer att betala för mycket 1,5-5 gånger jämfört med Ali.

Hur skulle jag göra en skrivmaskin?

Som hjärnor hög nivå och kommunikationsmodulen skulle jag ta något från ESP32 eller ESP8266. Den första fungerar med bluetooth och wifi. Den andra fungerar bara med wi-fi.

En Arduino kommer också att fungera som en kringutrustning. Men! Jag skulle inte göra en trädgård av ett gäng kretskort och ledningar - troligen kommer det inte att passa in i maskinens kropp, och om det gör det kommer det att vara väldigt skrämmande.

Därför skulle jag placera alla komponenter i denna design på en specialdesignad tryckt kretskort, som sedan kommer att tillverkas av någon Resonit enligt min beställning.

1) Beror på din plats och tillåtelse för en liten överbetalning. Du kan beställa allt du behöver från Kina om du är villig att vänta 14-40 dagar, vilket sparar en liten del av det totala beloppet.
Jag beställde personligen från följande kamrater:

Följaktligen uppstod inga problem.
2) För den delen behöver du två DC-motorer och en servo. Ange bara "DC motor" och "Servo".
Exempel på problem:

När du väljer en servo måste du vara uppmärksam på växlarna och, naturligtvis, dragkraften som utvecklas. I princip, för en banal leksaksbil, räcker det första alternativet som ges i exemplet. Men för framtiden, kom ihåg att prefixet "MG" innebär metallväxlar, vilket gör enheten generellt mer motståndskraftig mot skador, även om den inte eliminerar dem.
För att styra hela systemet behöver du också en så kallad "motorsköld":

Det första exemplet som ges, tack vare närvaron av ett skiftregister och två bryggor, låter dig styra fyra motorer samtidigt. Det enda som kommer att vara ett problem är mat, för... För adekvat funktion kräver var och en 5V, annars kan det uppstå problem med den utvecklade effekten.
I princip kan den andra också styra fyra hjul samtidigt, helt enkelt koppla ihop dem i par (för att svänga, använd skillnaden i hastighet på sidorna). Men i ditt fall kommer det andra alternativet att vara tillräckligt. Dessutom tillåter det användning av högre strömmar än den första.
3) Köp helt enkelt lysdioder och anslut dem antingen direkt (inte att glömma motstånden) eller genom en av mikrokretsarna.
"Diod"

4) Installera helt enkelt Arduino IDE och använd C/C++

Resurser att utforska:

p.s. rörande Fjärranslutning, var uppmärksam på min väns svar ovan

1) Var kan man köpa själva Arduino?
Ja
2) Vilka motorer kommer att vara kompatibla med detta enda kort? Du behöver ett par motorer för att flytta maskinen, och som jag förstår det behöver du en stegmotor för att vrida maskinen.
Vilken som helst, men du kan inte ansluta någon motor direkt, du behöver en speciell motorstyrningsskylt, till exempel den här. För den roterande mekanismen används inte stegmotorer, men

Vad vi behöver:

1. Robotchassi, =$9,50
2. Motorförare, =$1,22
3. En sensor som kommer att upptäcka ett hinder, jag bestämde mig för det populäraste och billigaste alternativet = $0,94
Det är dock ingen som stör dig att använda dyrare eller liknande
4. Montering av sensorn, inte det bästa, men ett genomförbart alternativ. =1,08 USD
Som analoger: det finns också den svårfångade gula, som man har sökt mest efter, men jag har inte hittat länken. Vem ska leta efter den, den ser ut som blå, men den har normala hål för en M3-skruv och 4 skruvar för att fästa en avståndsmätare.
5. Ett arduinokort som kommer att bearbeta data från sensorn och utfärda ett beslut om vart det ska gå härnäst. Jag bosatte mig på , som det mest bekväma för att modellera i farten = 5,88 $
Det här kortet valdes på grund av möjligheten att ersätta mikrokontrollern i händelse av fatalt fel, så att du kan köpa en version

Totalt spenderade jag ungefär $19 på grunderna.

!!! terminaler, kontakter, tång kan bytas ut

Jag kommer att behöva ovanstående senare och mer än en gång, det är inte nödvändigt att accelerera så

Ett par bilder för ett mellanmål

Ledningar och terminaler


Stativ, bultar, muttrar, brickor

hopsättning

Låt oss gå vidare till den roliga delen - skapandet av Frankenstein!
Först och främst borrar vi ett hål i det blå fästet för M3-bulten, eftersom jag inte hittade något annat monteringsalternativ


Vi lägger avståndsmätaren på varmt lim.


Vi monterar chassit och fäster vår sensor. För att den skulle sitta så lågt som möjligt var vi tvungna att inte fixa den direkt på chassit, utan använda ett stativ för att sänka ner den några centimeter. Den nedre kanten av fästet var i jämnhöjd med motorerna.

Vi fäster motordrivrutinen och ansluter motorerna.



Vi anpassar en powerbank istället för ett batterifack.
För att göra detta gör vi två hål för M3-skruvar för montering på chassit, löder två ledningar "+" och "-" till USB-kortet på kortet och tar ut ledningarna genom en annan borrat hål. Tyvärr hade jag inte en lämplig strömbrytare till hands, så den här funktionen kommer att utföras genom att koppla bort ledningarna från Arduino. Därefter fäster vi den här saken på chassit.





Installera Arduino och anslut kablarna




Det är bekvämt att batteriet laddas via en powerbank.

Vi sätter i batteriet, flashar det (jag använde atmel studio 6-miljön), vänder på det så att det inte rinner iväg och testar vad som hände.

Vid första anblicken är allt normalt, om ett hinder dyker upp, vänder maskinen åt sidan, kontrollerar om det finns ett hinder, och om det upptäcks igen, vänder den åt andra hållet. Vad hände i praktiken: den upptäcker hinder med en smäll, svänger bra, har experimentellt ställt in nödvändiga fördröjningar, men är praktiskt taget oförmögen att köra i en rak linje på grund av den bakre ratten. Troligtvis stötte jag på ett så "tight" alternativ, men på grund av detta kör bilen alltid diagonalt, en bagatell, men obehaglig.

Låt oss sammanfatta det

Till att börja med bör de som bestämmer sig för att göra något liknande vara uppmärksamma på chassit med fyra motorer. Ett sådant steg kommer i teorin att eliminera möjligheten till rörelse i en båge, men kan lägga till huvudvärk när man väljer en motorförare. Men skynda dig inte att racka på dina hjärnor, du kan lämna den här, allt borde fungera perfekt, strömmarna passerar ände till ände - två motorer per kanal. Men en powerbank med en burk är definitivt inte tillräckligt. Detta är enligt min mening redan ett skäl att ta en risk. Du måste också köpa brickor, eftersom... När det fästs på plast kan obehagliga saker hända. Det skulle också vara bra att separera strömförsörjningen till arduino och motorer, eller använda en stabilisator, eller i värsta fall löda en kondensator stor kapacitet, men det här är för riktiga finsmakare, det fungerar för mig också. I praktiken höll jag priset till cirka 2 000 rubel, det kunde ha varit billigare, men det här var min träning för sinnet och min första erfarenhet av programmering (vilket är vad allt startades för), jag sparade inte mycket. När jag har tid fäster jag radiokontrollen och byter.

P.S. Problemet med att röra sig i en båge löstes genom att byta ut motorerna, tack för rådet. När du köper ett chassi, skynda dig inte att bekräfta, testa det först i aktion. Det finns inga fler jambs, allt fungerar.







2024 gtavrl.ru.