Fjärrkontroll av roboten. Sätt att styra roboten. WiFi-kontroll

Idag kommer du inte att överraska någon med radiostyrd hemgjorda produkter. Men du måste erkänna, det är på något sätt "gammaldags sätt" att trycka på kontrollknapparna... Det är mycket mer intressant att styra hantverk med hjälp av borströrelser, eller hur? Den här artikeln visar ett exempel på hur du kan organisera fjärrkontrollen med hjälp av ett Arduino-kort och flera böjsensorer. PHIRO Pro kommer att fungera som testperson

Steg 1: Vad du behöver

  • Böjsensorer;
  • Arduino UNO;

  • Bluetooth-modul HC-05;

  • Handske;

  • Byglar;

  • 9B batteri;

  • Appen Pocket Code.

Steg 2: Ladda upp Firmata Standard till Arduino

Det är nödvändigt att ladda firmata-standarden på Arduino-kortet för att ansluta den med Pocket Code. I det här projektet använder vi Arduino UNO, men vilket Arduinokort som helst kan användas.

  • Vi kopplar Arduino-kortet till datorn/laptopen.
  • I Arduino ID, välj COM-port. Verktyg -> Seriell port -> Motsvarande COM-port
  • Välj sedan typ av bräda. Verktyg -> Board -> Ditt Arduino Board
  • Välj sedan Firmata-standarden. Exempel -> Firmata -> Standard Firmata
  • Klicka på "Ladda upp" och ladda upp koden till forumet.

Steg 3: Anslut sensorerna till kortet och fäst dem på handsken

Böjsensorer är resistiva enheter som kan användas för att detektera böjning eller lutning. Nedan är ett diagram över anslutning av sensorer på Arduino. Jag använde böjda häftklamrar för att säkert fästa sensorerna på handsken, men du kan använda dragkedjor i plast om du föredrar det.

Steg 4: Anslut HC-05 Bluetooth-modulen till Arduino

Vi ansluter stiften på bluetooth-modulen och Arduino-kortet enligt följande:

  • HC05 Tx - Arduino Rx
  • HC05 Rx - Arduino Tx
  • Vcc - 5V
  • GND - GND

Steg 5: Anslut Arduino till batteriet

Vi använder ett 9V-batteri för att driva Arduino-kortet med en Bluetooth-modul. Denna typ av layout möjliggör enkel montering på en handled/armband. Ju mer kompakt desto bättre.

Steg 6: Pocket Code Program

Nedan finns exempel på hur du använder programmet. Först och främst, se till att PHIRO Pro är i läge 3 (Bluetooth-läge). Tryck på Mode-knappen på PHIRO innan den blå lysdioden, som finns bredvid displayen på toppen, tänds.

För programmet finns det i allmänhet 7 lägen.

  • Pekfingret rätas ut. Strålkastarna lyser rött. Programmet visar STOP.
  • Pek- och långfingret rätas ut. Strålkastarna lyser grönt. Programmet visar STOP.
  • Pek-, lång- och ringfingret rätas ut. Strålkastarna lyser blått. Programmet visar STOP.
  • Handflatan är öppen. PHIRO går framåt. Strålkastarna lyser vitt. Programmet visar FRAMÅT.
  • Handflatan är knuten till en knytnäve. PHIRO stannar. Strålkastarna är släckta. Programmet visar STOP.
  • Handflatan knyts till en knytnäve och lutas åt vänster (telefonen lutas åt vänster). PHIRO svänger vänster. Den vänstra strålkastaren lyser gult. Programmet visar VÄNSTER.
  • Handflatan knyts till en knytnäve och lutas åt höger (telefonen lutas åt höger). PHIRO svänger höger. Den högra strålkastaren lyser gult. Programmet visar RIGHT.

Steg 7: Utför slutinstallationen

För att fästa telefonen i handen kan du använda ett armband eller göra som jag gjorde.

Jag köpte ett billigt skal till min mobiltelefon, klippte hål och satte på kardborreband. Armbandet med telefonen är klart.

Det var allt!) Tack för din uppmärksamhet)

Ett av de mest lovande områdena i utvecklingen av militär utrustning är skapandet av fjärrstyrda robotar utformade för att lösa olika problem. För närvarande används redan obemannade luftfartyg som arbetar enligt denna princip aktivt. När det gäller mark- och ytrobotik har dessa områden ännu inte fått samma utveckling. Användningen av fjärrstyrd utrustning inom militären har hittills haft mycket begränsad användning, vilket beror på tekniska svårigheter och behovet av att "integrera" den i de väpnade styrkornas befintliga struktur. Men på sikt kan antalet fjärrstyrda robotar nå en nivå där det kommer att bli nödvändigt att leta efter nya lösningar som kan underlätta samspelet mellan ett stort antal liknande utrustning.

Den utbredda användningen av stridsrobotar kan leda till behovet av att skapa speciella informationsöverförings- och kontrollsystem, liknande kombinerade vapensystem. Som det blev känt har arbetet påbörjats vid St. Petersburg Central Research Institute of Robotics and Technical Cybernetics (CNII RTK) för att studera utseendet och skapa ett enhetligt kontrollsystem för stridsrobotutrustning. Interfax, med hänvisning till en representant för Central Research Institute of RTK, rapporterar att målet med arbetet är att skapa system som låter dig styra flera robotar samtidigt, vilket gör det möjligt att utföra olika operationer med större bekvämlighet. Dessutom kommer detta tillvägagångssätt att göra det möjligt att förena kontrollpanelerna för olika robotsystem.


Naturligtvis kommer utvecklingen av ett enhetligt kontrollsystem inte att innebära att "individuella" fjärrkontroller helt försvinner. Alla nya robotar kommer även fortsättningsvis att vara utrustade med egen fjärrkontrollutrustning. Men enligt idén från de anställda vid Central Research Institute of RTI, bör all ny utrustning kunna interagera med något vanligt flerkanaligt kontrollsystem. På grund av detta förväntas det vara möjligt att ge en större flexibilitet i användandet av robotar, individuellt och i grupp. Med andra ord, under vissa omständigheter kommer soldater från vilken enhet som helst att kunna använda flera enheter av robotik och styra dem från en enda fjärrkontroll. Följaktligen kommer interaktionen mellan flera operatörer att underlättas avsevärt, eftersom deras antal kommer att minska avsevärt.

Det är värt att notera att redan vid den initiala utvecklingen av utseendet på ett sådant system uppstår vissa frågor. Till exempel kommer det att vara mycket svårt för en operatör att beordra flera robotar samtidigt, vilket avsevärt kan minska effektiviteten i stridsarbete. I det här fallet behöver du några automatiska algoritmer som kan ta på sig de flesta enkla och "rutinmässiga" uppgifter, som att flytta till en angiven punkt eller observera terrängen och söka efter mål som är kontrasterande i det optiska eller infraröda området. Vi pratar inte om artificiell intelligens. För närvarande behöver stridsrobotar bara lämplig programvara som kan navigera med hjälp av satellitsystem eller känna igen rörliga föremål. När den når en given ruttpunkt eller vid detektering av ett objekt i den anförtrodda sektorn måste automatiseringen skicka en signal till operatören, och han kommer i sin tur att bestämma nästa uppgift för elektroniken eller ta kontrollen i egna händer.

En liknande struktur av en "enhet" av strids- eller multifunktionsrobotar kan användas inte bara i militära operationer. Centralt styrda robotar kan bära spaningsutrustning eller vapen. Samtidigt får de en användbar fördel: enheter som styrs från en fjärrkontroll kan bland annat användas för att sätta upp bakhåll eller för att organisera en attack mot stationära föremål från flera håll. Sådana funktioner tillåter dock operatören eller operatörerna av robotens "enhet" att utföra andra uppgifter. Till exempel kan flera robotar som styrs av en operatör under räddningsinsatser spana in situationen mer effektivt än en åt gången. Dessutom kan flera enheter med specialutrustning, under vissa omständigheter, snabbt och effektivt lokalisera och släcka en brand eller utföra en annan liknande uppgift.

Men ett enhetligt robotstyrsystem har också nackdelar. Först och främst är det nödvändigt att notera komplexiteten i att skapa en slags universell kontrollpanel. Trots ett antal gemensamma funktioner kräver i de flesta fall varje modell av en strids- eller multifunktionsrobot ett specialdesignat kontrollsystem. Således kan ultralätta drönare styras av ett komplex baserat på en vanlig dator eller bärbar dator, medan mer seriösa och stora enheter används i samband med lämplig utrustning. Till exempel har det amerikanska, hjulförsedda, fjärrstyrda, fjärrstyrda fordonet Crusher en kontrollpanel, som är en slags sittbrunn med ratt, pedaler och flera monitorer. Således bör en enda kontrollpanel byggas enligt ett modulärt schema, och varje modul i detta fall kommer att ansvara för funktionerna i en viss klass av fjärrstyrd utrustning, beroende på rörelsemetod, vikt och syfte.

Det är värt att komma ihåg att antalet inhemska robotar som kan användas för militära eller räddningsbehov fortfarande är litet. Huvuddelen av sådan utveckling sker inom obemannade flygfarkoster. Det är anmärkningsvärt att flera statliga och kommersiella organisationer samtidigt utvecklar denna teknik. Naturligtvis utrustar var och en av dem sitt komplex med kontroller av sin egen design. Skapandet av ett enhetligt standardhanteringssystem kommer att bidra till att skapa ordning i denna industri. Dessutom kommer enhetlig kontrollutrustning att avsevärt förenkla utbildningen av operatörer av robotsystem. Med andra ord kommer den framtida operatören att kunna studera de allmänna principerna för ett enhetligt styrsystem och sedan dessutom behärska de färdigheter och förmågor som är förknippade med användningen av ytterligare moduler och en specifik robotmodell. Därmed kommer omutbildning av operatören att använda annan utrustning att förenklas och reduceras flera gånger.

Och ändå kommer arbetet vid St. Petersburgs centrala forskningsinstitut för robotik och teknisk cybernetik inte att ha mycket framtid inom en mycket nära framtid. Faktum är att huvuddelen av områdena strid och multifunktionsrobotik i vårt land ännu inte har fått ordentlig utveckling. Så det inhemska enhetliga kontrollsystemet kommer sannolikt att behöva vänta på att ett stort antal robotar dyker upp. Det är värt att säga att detta problem har en positiv konsekvens. Eftersom massskapandet av olika robotar ännu inte har börjat, kommer de anställda vid Central Research Institute of RTK att hinna slutföra sitt arbete med ett enhetligt styrsystem och presentera den färdiga utvecklingen innan nya modeller av robotar dyker upp. Därmed kan utvecklingen av Central Research Institute of Robotics bli en standard som kommer att beaktas vid utveckling av nya robotar för försvarsmakten, brottsbekämpande och räddningsstrukturer.

Det är för tidigt att tala om detaljerna i det aktuella projektet: all information om det är begränsad till endast ett fåtal rapporter i media. Samtidigt kunde RTK:s centrala forskningsinstitut först nyligen få motsvarande beställning. Arbete i denna riktning måste dock, oavsett när det påbörjades, utföras och slutföras. Trots dess komplexitet kommer en enda robotkontrollpanel att vara användbar för praktisk användning.

Baserat på material från webbplatser:
http://interfax.ru/
http://newsru.com/
http://lenta.ru/
http://rtc.ru/

Skicka ditt goda arbete i kunskapsbasen är enkelt. Använd formuläret nedan

Studenter, doktorander, unga forskare som använder kunskapsbasen i sina studier och arbete kommer att vara er mycket tacksamma.

Postat på http://www.allbest.ru/

Utveckling av ett fjärrkontrollsystem för en utbildningsrobot

Introduktion

robotik användarprogram mikroprocessor

Robotik är ett av de mest dynamiskt utvecklande områdena idag. Vi ser hur robotar successivt erövrar livets alla sfärer – tillverkning, medicin, jordbruk etc. Inom en snar framtid kommer robotar att bli en integrerad del av vardagen. Därför behövs specialister med kompetens inom området robotik och mekatronik. I sin tur, för att utbilda framtida specialister, krävs utbildningsrobotar, om vilka det kommer att vara möjligt att förbättra sina kunskaper.

Det är otroligt hur snabbt tekniken utvecklas i vår tid; det verkar som att takten i deras utveckling redan är svår att följa. Mobiltelefoner är ett av de slående exemplen, idag har alla dem. Dessutom har de blivit en integrerad del av vårt samhälle. Det finns telefoner med en minimal uppsättning funktioner, och det finns "avancerade" med funktioner jämförbara med en persondator.

Mobiltelefoner ersätter delvis många enheter som en kamera, dator, e-läsare etc. Det är värt att tänka "varför inte styra några enkla enheter med din telefon?" Det rekommenderas inte att byta ut hela enheten, utan bara några av fjärrkontrollerna. Detta kommer att förenkla kontrollen av olika enheter i en persons dagliga liv. Till exempel kan en telefon med Bluetooth-funktion ersätta alla fjärrkontroller för hushållsapparater, som så ofta tappas bort.

Detta nuvarande problem kommer att lösas tack vare en liknande enhet som utvecklats i detta projekt, vars huvudidé och syfte är att skapa ett fjärrkontrollsystem för en pedagogisk robot via en Bluetooth-kommunikationskanal.

Bluetooth är den vanligaste kommunikationskanalen för tillfället. Den finns på nästan alla telefoner och är väldigt enkel att använda. Bluetooth eller bluetooth är en tillverkningsspecifikation för trådlösa personliga nätverk. Bluetooth säkerställer utbyte av information mellan enheter som persondatorer, mobiltelefoner, skrivare, digitalkameror, möss, tangentbord, joysticks, hörlurar, headset. Bluetooth gör att dessa enheter kan kommunicera när de befinner sig inom en radie på upp till 200 meter från varandra (räckvidden varierar mycket beroende på hinder och störningar), även i olika rum.

Ordet Bluetooth är översatt från danska som "Blåtandad". Detta smeknamn bars av kung Harald I, som styrde Danmark och en del av Norge på 900-talet och förenade de krigförande danska stammarna till ett enda kungarike. Innebörden är att Bluetooth gör samma sak med kommunikationsprotokoll, och kombinerar dem till en universell standard.

I detta arbete utvecklas ett fjärrkontrollsystem för en pedagogisk robot. Den pedagogiska mobila roboten är byggd utifrån en radiostyrd bil. Och fjärrkontroll utförs via Bluetooth kommunikationskanal. Signalöverföringsenheten var en telefon med förmågan att överföra information via Bluetooth, och mottagarenheten var en Bluetooth-modul installerad på ett kort i maskinen.

Låt oss definiera vad en robot är. Robot är en elektromekanisk, pneumatisk, hydraulisk anordning eller en kombination därav, designad för att utföra produktion och andra operationer som vanligtvis utförs av människor (ibland djur). Användningen av robotar gör det möjligt att underlätta eller till och med ersätta mänskligt arbete.

Med utvecklingen av robotik har 3 typer av robotar dykt upp:

Med ett strikt handlingsprogram;

Styrs av en mänsklig operatör;

Med artificiell intelligens, agerar målmedvetet utan mänsklig inblandning.

Samtidigt är en robot inte så mycket en hybrid av en maskin och en levande varelse som en automatisk mekanism som utför specifikt arbete som är ovanligt för andra typer av maskiner. Till exempel är en kran en maskin för att lyfta laster till en höjd, en dator är en elektronisk datormaskin. En datorstyrd kran kan redan nu kallas en robot.

När vi pratar om robotar undrar vi ofta hur intelligenta de är och om de därför kan utgöra en fara eller fördel för människor. Ett intressant ämne, även om vi inte borde prata här om robotar, utan om datorerna som styr deras handlingar. Roboten i sig är bara en uppsättning ställdon. Kommandon för rörelse ges till ställdonen av en dator, i detta fall en telefon.

För att nå projektmålet sattes och löstes följande uppgifter:

1) Utveckling av ett blockschema över en styrenhet. Ett blockschema över driften av en pedagogisk mobil robot med ett fjärrkontrollsystem håller på att utvecklas.

2) Utveckling av en mikroprocessorstyrenhet för DC-motorer. Ett elektriskt kretsschema utvecklas - val av motorer, mikrokontroller, kommunikationsgränssnitt. Det elektriska kretsschemat beräknas och ett tryckt kretskort och monteringsritning tas fram.

3) Utveckling av en algoritm och ett program för styranordningen;

1 . Utveckling av ett blockschema över en styrenhet

Systemblockschema

Med hjälp av programvaran installerad på telefonen genereras signaler och sänds till mottagarenheten, i detta fall är det en Bluetooth-modul.

Bluetooth-modulen tar i sin tur emot signaler och, utan bearbetning, överför dem till huvudkontrollelementet - mikrokontrollern.

Mikrokontrollern tar emot information och bearbetar den och genererar styrsignaler för styrdrivrutinen. Och genom styrdrivenheten tillförs spänning till DC-motorerna för deras drift.

2 . Utveckling av en mikroprocessorstyrenhet för DC-motorer

I detta avsnitt utförs utvecklingen av ett elektriskt kretsschema - valet av motorer, mikrokontroller, kommunikationsgränssnitt. Det elektriska kretsschemat beräknas och ett tryckt kretskort och monteringsritning tas fram.

Utveckling av ett elektriskt kretsschema

Motorval

Som kontrollobjekt i detta arbete valde vi ut motorer installerade i en radiostyrd bil som köpts specifikt för jobbet.

Välja en mikrokontroller

Atmega8-mikrokontrollern från Atmel valdes som huvudelement för att ta emot och bearbeta signaler (se bilaga B). Mikrokontrollern har UART-portar och 3 timers, vilket är nödvändigt för detta arbete.

Atmels digitala signalprocessorer används ofta eftersom de har ett överkomligt pris och en tillräcklig uppsättning kringutrustning.

Välja en mikrokrets och kommunikationsgränssnitt

För att styra motorerna fanns det ett val mellan L298N och L293D drivrutiner. Men valet avgjordes på L298N-drivrutinen. Den fungerar över ett bredare spänningsområde, och därför finns det ingen risk för överhettning av chipet. Den är också lättillgänglig och har ett komplett utbud av funktioner som krävs för att få jobbet gjort.

UART-gränssnittet är valt som kommunikationsgränssnitt med datorn i detta projekt. Detta gränssnitt valdes inte av en slump, eftersom en Bluetooth-modul används för dataöverföring, som i sin tur använder UART-gränssnittet. En annan fördel är dess goda dataöverföringshastighet - 9600 Kbps.

Beräkning av mekanisk effekt.

Modellens vikt är 0,7 kg, maxhastigheten är 1 m/s med en hjuldiameter på 30 mm.

Låt oss beräkna accelerationen:

Vridmomentet beräknas enligt följande:

Vid tröghetsmomentet och vinkelaccelerationen b =

För att beräkna den maximala motoreffekten används motorvarvtalet, uttryckt i varv per minut:

Motoreffekten är proportionell mot vridmoment och hastighet:

Beräkning av elektriskt kretsschema

Välja en drivrutin för strömkontroll.

I detta arbete använder vi L298N-drivrutinen med följande egenskaper:

Maximal driftspänning: Upit< Uдрайвера=46 В;

Matningsspänning U matning =+5 V, +3,3 V;

Maximal utström (per kanal): Ipit< Iдрайвера=2 А:

Beräkning av motstånd.

Reset-stiftet på mikrokontrollern, enligt den tekniska dokumentationen, rekommenderas att anslutas till strömförsörjningen genom ett pull-up-motstånd med ett nominellt värde på 10 kOhm.

Motstånd för att ansluta mikrokontrollern och Bluetooth-modulen installeras baserat på modulens tekniska dokumentation: driftspänning 3,3 V; när du arbetar med en spänning på 5 V, installera motstånd med ett nominellt värde på 4,7 kOhm.

För stabil drift och för att undvika att bränna ut lysdioden är det nödvändigt att strömmen som flyter i kretsen motsvarar den nominella (10 eller 20 milliampere), för detta installerar vi ett motstånd med ett motstånd på 1 kOhm.

Beräkning av kondensatorer.

För att stabilisera spänningen från strömkällan kopplades kondensatorer med en kapacitet på 30 μF och 100 μF parallellt.

Det är redan känt att Bluetooth-modulen arbetar med en spänning på 3,3 V; det visar sig att driftsspänningen i 5 V-chippet kommer att vara för hög, vilket kan leda till att modulen brinner ut. För att minska spänningen är det därför nödvändigt att ansluta L78L33-stabilisatorn. Baserat på dess tekniska dokumentation kommer 2 kondensatorer med en kapacitet på 0,33 μF och 0,1 μF att krävas. Anslutningsschemat visas i figuren.

L78L33 stabilisatorkopplingsschema

PCB design

Utvecklingen av enhetsdesignen utförs på basis av det utvecklade elektriska kretsschemat, med hänsyn till kraven på underhåll, kraven på teknisk estetik, med hänsyn till driftsförhållanden och andra krav.

Vid design av ett kretskort måste följande beaktas.

Om det inte finns några begränsningar måste kretskortet (PCB) vara kvadratiskt eller rektangulärt. Den maximala storleken på någon sida bör inte överstiga 520 mm. Tjockleken på PP måste motsvara ett av siffrorna i serien: 0,8; 1,0; 1,5; 2.0 beroende på området för PP.

Hålens mittpunkter bör placeras vid koordinatnätsnoderna. Varje monterings- och genomgångshål måste täckas av en kontaktdyna.

Diametern på monteringshålen och diametrarna på mikrokretsledarna sträcker sig från 0,8...1,2 mm, och diametrarna på motståndsledningarna sträcker sig från cirka 0,66 mm. För att förenkla tillverkningsprocessen har monteringshålen på brädan en diameter på 0,8 och 1,2 mm. Gallrets stigning är 1,27 mm.

Löd elementen med POS-61 lod. Skivmaterialet är glasfiberfolie STEF 2-1,5-50 enligt GOST 10316-86.

Utveckling av en monteringsritning

När du utvecklar en monteringsritning måste du vara uppmärksam på följande krav:

1) utvecklingen av en monteringsritning av en DC-motorstyrenhet utförs på basis av det utvecklade kretsschemat, med hänsyn till kraven för ritningsdokument;

2) i enlighet med schemat för att dela upp produkten i komponentdelar, tilldela en beteckning till monteringsenheten och dess element i enlighet med GOST 2.201-68;

3) ange de nödvändiga dimensionerna i enlighet med kraven i GOST 2.109-73;

4) fyll i specifikationen och uppfyller alla kraven i GOST 2.108-68;

5) fyll i huvudinskriften och fyll i andra nödvändiga inskriptioner (tekniska krav etc.).

3 . Utveckling av en algoritm och program för en styrenhet

I detta avsnitt utvecklar vi en algoritm för en mikroprocessorstyrenhet för DC-motorer, samt utvecklar ett styrprogram för en telefon.

Utveckling av en algoritm för en mikroprocessorstyrenhet för DC-motorer.

Fig. 3 visar ett diagram över operationsalgoritmen för mikroprocessorstyranordningen.

Överförda bytevärden:

10:00 - Stopp; 01 - Framåt; 10 - Rygg; 11 - Stopp.

23:00 - Stopp; 01 - Rätt; 10 - vänster; 11 - Stopp.

Programutveckling.

Utveckling av styrprogram för DC-motorer.

Detta program är nödvändigt för att styra DC-motorer. Mikrokontrollern styrs av ett program från telefonen.

DC-motorstyrningsprogram med ATmega8-mikrokontroller (se bilaga A).

Utveckling av ett program för telefonen.

För att köra det här programmet måste du ha Windows 98/2000/ME/XP installerat på din dator. Detta program utvecklades i Android SDK-miljön.

Följande namnrymder används för arbete:

importera java.io.IOException;

importera java.io. OutputStream;

importera java.util. Lista;

importera java.util.UUID;

importera android.app. Aktivitet;

importera android.app. AlertDialog;

importera android.app. ProgressDialog;

importera android.bluetooth. Bluetooth Adapter;

importera android.bluetooth. Bluetooth-enhet;

importera android.bluetooth. BluetoothSocket;

importera android.content. Sammanhang;

importera android.content. Dialoggränssnitt;

importera android.content. Avsikt;

importera android.content. Dialoggränssnitt. OnClickListener;

importera android.hardware. Sensor;

importera android.hardware. SensorEvent;

importera android.hardware. SensorEventListener;

importera android.hardware. SensorManager;

importera android.net. Uri;

importera android.os. Bunt;

importera android.os. Hanterare;

importera android.os. Meddelande;

importera android.view. LayoutInflater;

importera android.view. Meny;

importera android.view. MenuInflater;

importera android.view. Menyobjekt;

importera android.view. MotionEvent;

importera android.view. Se;

importera android.widget. Knapp;

importera android.widget. TextView;

importera android.widget. Rostat bröd;

Syfte och villkor för användning av programmet.

Programmet är utformat för att generera och överföra signaler till en mikroprocessorenhet.

För att köra det här programmet måste du ha en enhet med Android-operativsystemet oavsett version. Detta program utvecklades i Android SDK-miljön.

Tillgång till programmet

Innan du startar programmet måste du ansluta ström till mikroprocessorenheten och vänta på att lysdioden blinkar, vilket betyder att den är redo för arbete.

För att starta programmet måste du slå på Bluetooth på enheten och starta programmet "BluCar". Använd knappen "Anslut till en enhet" för att upprätta en anslutning med Bluetooth-modulen ("linvor"). När lysdioden slutar blinka kan du börja överföra data.

4. Användarguide

För att kontrollera funktionen hos den pedagogiska mobila roboten behöver du följande:

Slå på strömmen till den pedagogiska mobila roboten med knappen som visas i figuren.

Strömknappen

Vänta tills de två lysdioderna som visas i figur 5 ska blinka. Den första (vita) är installerad på kretsen och blinkar varje sekund, vilket indikerar att kretsen har ström och är redo att användas. Den andra lysdioden sitter på Bluetooth-modulen och har 2 driftlägen:

Blinkar: väntar på anslutning;

Fast sken: indikerar anslutning.

LED arbetsstatus

Slå sedan på Bluetooth på telefonen och starta programmet "BluCar" som visas i figur 6. I programmet klickar du på knappen "Anslut från enhet" och från den medföljande listan väljer du linvor, som är Bluetooth-modulen. Vi väntar tills lysdioden på modulen börjar lysa konstant, vilket innebär en lyckad anslutning. Den pedagogiska mobila roboten med ett fjärrkontrollsystem är redo för arbete.

Program på telefonen "BluCar"

Kontrollmetoder:

"Framåt"-knapp - gå framåt;

"Reverse"-knapp - flytta bakåt;

Rotera telefonen i ett horisontellt plan med den högra kanten nedåt - vrida framhjulen åt höger;

Rotera telefonen i ett horisontellt plan med den vänstra kanten nedåt - vrida framhjulen åt vänster;

För att stänga av den mobila roboten måste du stänga av strömmen till kretsen och klicka på knappen "Koppla från enheten" i programmet.

Slutsats

Som ett resultat av att slutföra en avslutande kvalificerad kandidatuppsats på ämnet: ”Utveckling av ett fjärrkontrollsystem för en pedagogisk robot” producerades och skapades ett fjärrstyrningssystem för en pedagogisk robot via en Bluetooth-kommunikationskanal. En utbildningsrobot är en maskin med två likströmsmotorer och ett batteri. Signalöverföringsenheten var en telefon med förmågan att överföra information via Bluetooth, och mottagarenheten var en Bluetooth-modul installerad på ett kort i maskinen.

Det praktiska problemet som beaktas i projektet ger en tydlig uppfattning om betydelsen av den presenterade enheten. Den här enheten kommer att kunna lösa mycket pressande vardagsproblem, som att styra alla hushållsapparater från din telefon och mer.

Det skapade fjärrkontrollsystemet utförs med hjälp av en mikrokontroller. Mikrokontroller är mycket bättre än sina föregångare. De är mycket mindre i storlek och har större produktivitet och påskyndar också avsevärt den uppgift som tilldelats dem. I detta arbete används en mikrokontroller för att bearbeta signaler som kommer till den från telefonen. Den är också ansvarig för att generera signaler för motorföraren, vilket får motorerna att snurra direkt. Mikrokontrollern är installerad i en krets, som i sin tur är installerad i maskinen och kopplad till motorerna.

Ovanstående slutsatser dras från den första (teoretiska) delen. Ett blockschema har skapats.

Det andra kapitlet beskriver hur en mikroprocessorbaserad enhet för fjärrstyrning av DC-motorer utvecklades.

I det tredje kapitlet skapades en algoritm och ett telefonprogram för att visualisera styrningen av DC-motorer.

Som ett resultat av detta arbete uppnåddes alla uppsatta mål och mål framgångsrikt. I arbetet med att utföra arbetet konsoliderades färdigheter i att utveckla elektriska kretsar, deras beräkningar och layout. Även under arbetet förbättrades mikrokontrollers programmeringsfärdigheter och programmeringserfarenhet fick man i Android-miljön.

Bibliografi

1. Semenov B.Yu. Kraftelektronik för amatörer och proffs - M.: Solon-R, 2001. -126 sid.

2. Lauren Darcy, Shane Conder: Android på 24 timmar. Programmera applikationer för Googles operativsystem. Ed. Reed Group, 2011

3. Kasatkin A.S. Elektroteknik: Lärobok. handbok för universitet. 4:e uppl. - M.: Energoatomizdat, 1983. -440 s., ill.

4. Evstifeev A.V.: AVR-mikrokontroller från Tiny- och Mega-familjerna från ATMEL. Förlag "Dodeka-XXI", 2008. - 558 s.

5. Romanycheva E.T. Utveckling och utförande av konstruktionsdokumentation för radio-elektronisk utrustning. / Katalog. M.: Radio och kommunikation, 1989. - 448 sid.

6. Sivukhin D.V. Allmän kurs i fysik: T.1. Mekanik: Lärobok för fysikmajor vid universitet. - M.: Nauka, 1974. - 520 sid.

7. Horwitz P., Hill W. The Art of Circuit Design. I 3 volymer. Per. från engelska - M.: Mir, 1993.

8. Atmel, 8-bitars mikrokontroller med 16K byte programmerbar Flash Atmega16 i systemet - Datablad.

9. L298 - Dual Full-Bridge-drivrutin - Datablad.

10. L78L00 SERIEN - Positiva spänningsregulatorer - Datablad.

11. Bluetooth Seriell Converter UART Interface 9600bps Användarhandbok - Datablad

12. Wikipedia: Den fria encyklopedin. 2012. URL: http://ru.wikipedia.org. (Åtkomstdatum: 2012-05-20).

Postat på Allbest.ru

...

Liknande dokument

    Utveckling av ett blockschema över en styrenhet för en utbildningsrobot. Val av motor, mikrokontroller, mikrokrets, kommunikationsgränssnitt och stabilisator. Beräkning av det elektriska kretsschemat. Utveckling av en sammanställningsritning av enheten och programalgoritmen.

    kursarbete, tillagt 2013-06-24

    Utveckling av ett kretsschema för en mikroprocessorbaserad likströmsmotorstyrenhet baserad på styrenheten ATmega 128. Utveckling av ett paket med subrutiner i Assembler-språket i syfte att reglera och korrekt drift av enheten.

    kursarbete, tillagd 2011-01-14

    Egenskaper för enheten och tekniska data för industriroboten SM40TS. Beskrivning av U83-K1883-seriens mikroprocessorsats, dess kommandosystem, K572PV4 mikrokrets, funktion, kretsscheman och driftsalgoritm för styrprogrammet.

    kursarbete, tillagt 2010-02-06

    Utveckling av en kontrollmikroprocessorenhet som implementerar en specificerad interaktion med kontrollobjektet, egenskaper hos hårdvara och mjukvara. Systemprogramvara som säkerställer exekvering av en given kontrollalgoritm.

    kursarbete, tillagd 2009-10-25

    Syfte, klassificering och sammansättning av passerkontrollsystemet. Huvudkännetecken för biometriska medel för personlig identifiering. Användaridentifikation med iris. Utveckling av en algoritm för enhetens funktion.

    avhandling, tillagd 2014-11-25

    Analys av befintliga system för att skapa och hantera webbplatser, deras allmänna egenskaper och bedömning av funktionalitet i nuvarande skede. Krav på serverdelen, medel för dess utveckling. Gränssnittstestning. Skapande av en användarmanual.

    avhandling, tillagd 2012-11-04

    Uppgiftens relevans. Utveckling av ett funktionsdiagram över enheten. Radarinstallation (RLU). Mikroprocessordel. Motivering för enhetens driftalgoritm. Utveckling av ett enhetskontrollprogram. Algoritmdiagram. Förklaringar till programmet.

    kursarbete, tillagd 2007-10-18

    Analys av tekniska specifikationer. Utveckling av programgränssnittet och dess algoritmer. Kodning och testning av utvecklad programvara, bedömning av dess praktiska effektivitet och funktionalitet. Utformning och innehåll i användarmanualen.

    kursarbete, tillagt 2012-07-31

    Modern stridsteknik. Robotmedel i den militära sfären. Design av obemannade flygfarkoster, land- och sjörobotar. Utveckling av ett program i Prolog för att utföra uppdraget att minröja en militär minröjare.

    kursarbete, tillagd 2015-12-20

    Designa en mikroprocessorenhet som konverterar RS-232-gränssnittet (COM-port) till IEEE 1284 (LPT-port). Blockschema över enheten. Konvertera ett seriellt gränssnitt till ett parallellt gränssnitt på en ATMega 8 mikrokontroller.

Hej, Habrahabr! Jag satt på kvällen den 11 juni och tittade på en film. Oväntat för mig själv upptäckte jag att en kvinna jag aldrig känt tidigare hade skrivit till mig med ett erbjudande om att göra en robot för deras nya uppdrag. Summan av kardemumman är att du måste lösa pussel, utforska gömställen, tillämpa tips på rätt sätt, använda tillgängliga saker och i slutändan få nycklar och öppna dörrar... Jag var tvungen att göra en robot styrd från en dator med ett separat program. Jag tvivlade på vissa problem, till exempel: kommer jag att ha tid och exakt hur man gör trådlös dataöverföring (jag hade tidigare bara gjort trådlös dataöverföring på NXT)? Efter att ha vägt för- och nackdelar gick jag med. Efter det började jag fundera på dataöverföring. Eftersom det var nödvändigt att göra en robot snabbt fanns det ingen tid att komma ihåg och vidare bemästra till exempel Delphi, så idén uppstod att göra en modul som skulle skicka kommandon. Datorn måste helt enkelt skicka data till COM-porten. Denna metod är märklig, men den snabbaste. Detta är vad jag vill beskriva här. Jag kommer även att bifoga 3 program som hjälper dig att göra en radiostyrd bil.
Sändarmontering och dess program.
Jag gjorde en modul till en dator från FTDI Basic Breakout 5/3.3V från DFrobot, en ganska vanlig ATMEGA 328P-PU mikrokontroller med en Arduino bootloader och en radiomodul baserad på nRF24L01-chippet. I huvudsak är det bara en Arduino Uno med en radiomodul. Det är vad det är. Radiomodulen har en funktion som jag inte omedelbart märkte: ingångsspänningen bör ligga i intervallet från 3 till 3,6 volt (även om applicering av 5 volt på den inte kommer att döda den, men kommer inte att fungera), den övre gränsen för den logiska enheten är 5V. Det betyder att för att ansluta radiomodulen till megan behöver du ingen nivåomvandlare mellan 3,3V och 5V, utan du behöver installera en 3,3V stabilisator. FTDI har en inbyggd stabilisator, och jag drev radiomodulen från den.

Så här ser själva modulen ut (inuti och i monteringen):

Programmet består av initiering, startmeddelande och bearbetning av kommandon från styrprogrammet. Så var fallet i mitt fall. Grundläggande kommandon i Mirf-biblioteket:

#omfatta
#omfatta
#omfatta
#omfatta
#omfatta
Dessa bibliotek behövs för att radiomodulen ska fungera

Mirf.csnPin = 4 - ställer in pinnumret som ansvarar för "tillstånd att kommunicera" mellan radiomodulen och MK
Mirf.cePin = 6 - ställer in pinnumret som ansvarar för radiomodulens driftläge (mottagare/sändare)
Mirf.spi = &MirfHardwareSpi - konfigurerar SPI-linjen
Mirf.init() - initierar radiomodulen
Mirf.payload = 1 - storlek i byte av ett meddelande (standard 16, max 32)
Mirf.channel = 19 - ställer in kanalen (0 - 127, standard 0)
Mirf.config() - ställer in överföringsparametrar


Mirf.setTADDR((byte *)"serv1") - växlar radiomodulen till sändarläge
Mirf.setRADDR((byte *)“serv1”) - växlar radiomodulen till mottagarläge

Mirf.send(data) - skickar en byte-array
Mirf.dataReady() - rapporterar slutförandet av behandlingen av mottagna data
Mirf.getData(data) - skriv mottagen data till datamatrisen

Jag bifogar koden för sändarprogrammet.

Sändarprogram

#omfatta
#omfatta
#omfatta
#omfatta
#omfatta

Char aktiv;
byte data;

Ogiltig installation()
{
Serial.begin(19200);

Mirf.csnPin = 4;
Mirf.cePin = 6;

Mirf.init();
Mirf.nyttolast = 1;
Mirf.channel = 19;
Mirf.config();

Mirf.setTADDR((byte *)"serv1");

//signalmeddelande om påbörjande av arbetet
data=7;
Mirf.send(data);
fördröjning(200);
}

void loop()
{
if (Serial.available()) //Om data är redo att läsas
{
active=Serial.read(); // Skriv data till en variabel
}

Om (aktiv=="2")
{
data=2;
}

Om (aktiv=="3")
{
data=3;
}

Om (aktiv=="4")
{
data=4;
}

Om (aktiv=="5")
{
data=5;
}

Om (aktiv=="6")
{
data=6;
}

Mirf.send(data); //Skicka data
while(Mirf.isSending()); // Vänta tills data skickas
}

Managementprogram.

Det finns en intressant sak - bearbetning. Syntaxen är densamma som i Arduino, bara istället för void loop() finns void draw(). Men det blev ännu mer intressant i min situation med processing Serial library, som låter dig arbeta med en seriell port. Efter att ha läst handledningarna på Spurkfuns hemsida lekte jag med att blinka med lysdioden på Arduino ansluten till datorn med ett musklick. Efter det skrev jag ett program för att styra roboten från tangentbordet. Jag bifogar pilens kontrollkod. I princip finns det inget ovanligt i det.

Program för maskinstyrning

import processing.serial.*;
importera cc.arduino.*;

Seriell myPort;
PFont f=createFont("LetterGothicStd-32.vlw", 24);

Ogiltig installation()
{
storlek (360, 160);
stroke(255);
bakgrund(0);
textFont(f);

String portName = "XXXX"; // Här måste du skriva namnet på din port
myPort = new Serial(detta, portnamn, 19200);
}

Void draw() (
if (knapptryckt == false)
{
klar();
myPort.write("6");
println("6");
}
}

Void keyPressed()
{
// 10 - in
// 32 - mellanslag
// 37/38/39/40 - nycklar
klar();

Fyll(255);
textAlign(CENTER);
//text(nyckelkod, 180, 80);

Switch (nyckelkod)
{
fall 37:
text("Edem vlevo", 180, 80);
myPort.write("1");
ha sönder;

Fall 38:
text("Edem pryamo", 180, 80);
myPort.write("2");
ha sönder;

Fall 39:
text("Edem vpravo", 180, 80);
myPort.write("3");
ha sönder;

Fall 40:
text("Edem nazad", 180, 80);
myPort.write("4");
ha sönder;

Standard:
text("Takoy kommandi net", 180, 80);
myPort.write("6");
ha sönder;
}
}

Mottagare program.

Initieringen av detta program skiljer sig från initieringen av sändarprogrammet på bara en rad. Nyckelkommandot i den ändlösa slingan är Mirf.getData(data). Därefter jämförs det mottagna kommandot med siffrorna som motsvarar robotens eventuella åtgärder. Jo, då agerar roboten exakt enligt kommandon. Jag bifogar programkoden för maskinens mottagare.

Maskinprogram

#omfatta
#omfatta
#omfatta
#omfatta
#omfatta

Ogiltig installation()
{
Serial.begin(9600);

PinMode(13, OUTPUT); //LED

Mirf.csnPin = 10;
Mirf.cePin = 9;
Mirf.spi =
Mirf.init();
Mirf.nyttolast = 1;
Mirf.channel = 19;
Mirf.config();
Mirf.setRADDR((byte *)"serv1");
}

void loop()
{
byte data;

If(!Mirf.isSending() && Mirf.dataReady())
{
Mirf.getData(data);
Serial.println(data);
}

Switch (data)
{
fall 1:
motorer (-100, 100); // sväng vänster
ha sönder;

Fall 2:
motorer (100, 100); // gå rakt
ha sönder;

Fall 3:
motorer (100, -100); // sväng höger
ha sönder;

Fall 4:
motorer (-100, -100); // går tillbaka
ha sönder;

Standard:
motorer(0, 0); // stod
ha sönder;
}

Fördröjning(50);
}

Slutsats.

Vad kom ut av allt detta:

Jag gjorde den här roboten för klaustrofobi. De genomför uppdrag i verkligheten i olika städer, och bara för ett av dessa uppdrag behövde arrangörerna en radiostyrd robotsappare. Jag gillar det. Detta är naturligtvis felaktigt, eftersom... mot bakgrund av kontroll med hjälp av kommunikationsverktygen inbyggda i den bärbara datorn, men det gjordes på egen hand, mycket snabbt och utan problem. Jag hoppas att den här artikeln kommer att hjälpa dig att göra något liknande, och kanske ännu mer komplicerat. Här, den som vill vad.

Taggar: Lägg till taggar

Fjärrkontroll, ver. 0.1.1

(styr roboten på distans via Wi-Fi från en surfplatta i manuellt läge)

multifunktionsprogram för OpenComputers mod

Programmet låter dig få full kontroll över roboten, utföra många åtgärder på distans och samtidigt se själva roboten och dess parametrar.

Du kan till exempel använda en robot för att ta dig in på svåråtkomliga platser, lossa uran från en reaktor utan att ta emot strålning, bygga en enkel struktur dit du själv inte kan nå, eller tvärtom, ta med något. Roboten är under din fullständiga kontroll.

En rolig tillämpning av programmet är att attackera spelare. Robotar, baserat på konfigurationsinställningar, kan utföra åtgärder relaterade till användningen av objekt, slå på och av knappar, spakar och mekanismer och verktyg i någon annans privata, även om de inte förstör det privata. Du kan utföra en attack och riva spelarens alla avsaltningsanläggningar, dieselgeneratorer och väderkvarnar, även om han inte är med i spelet och inte har gömt allt från taket, eller inte har ställt upp en vakt och inte känner av angripare.

Du kan skruva fast reaktorkammaren i offrets vägg, trycka dit en 4-uranstav, slå på rödstenen på roboten och spränga väggen i flera block, om den oförsiktiga spelaren-offret har tätat huset tätt längs kanten av väggen, som spelare brukar göra =).

IT-reaktorn i inställningarna förstör block inom en radie av 2-4 block. Det finns en chans att du kommer att smyga in i offrets hus, medan du är i skydd och inte kan ses på något sätt.

Programkod (senast):

LÄSPLATTA:(pastebin get b8nz3PrH tabletRC.lua)

ROBOT:(pastebin få 7V2fvm7L robotRC.lua)

Gamla versioner (gamla):

Krav för konfigurationen av roboten och surfplattan ( tog en länkad karta som grund, det krävs, det krävs också en lagerkontroller i roboten, resten är valfritt. Du kan slänga ut skyltarna och stoppa i hinkkontrollen, lägga till lite sömmar och ta bort vätskor och så vidare. CL används ännu inte i programmet. För greppbrädan är en röd platta, en magnet och stor utrustning mycket önskvärt):

Surfplatta (ta en hårddisk med OS installerat):

Robot (du kan överge CL för nu och skjuta in en controller-board expander. Du kan sedan skjuta in ett WF-kort eller INET-kort till roboten i farten om det behövs):