Make: it Robotics starterskit - Sensor Data draadloos verzenden


In dit Instructable we willen nemen wat we geleerd hebben in "Make: it Robotics Starter Kit – draadloze connectiviteit" en "Make: it Robotics Starter Kit – vastleggen van Sensor Data" en combineert deze gegevens vastleggen van de sensorgegevens in real time en stuur deze gegevens naar een programma dat draait op onze computer draadloos.

Dus als u uw robot die is geconfigureerd voor het gebruik van de zender en de ontvanger niet hebt, neem een kijkje op de blogpost "Make: it Robotics Starter Kit – vastleggen van Sensor Data" en opnieuw configureren van uw robot en FTDI kabel.

Om de sensorgegevens verzenden op onze computer we weer hebben een paar kleine wijzigingen aanbrengen in ons programma van de Arduino lineFollow.ino:

Commentaar uit de volgende regel, zoals we niet langer onze teller-variabele hoeven.

int de teller;

Commentaar uit de variabele initialisatie van de teller variabele:

Counter = 0;

In de functie van de loop van het programma commentaar uit de volgende regels:

mySerial.println (counter, DEC);

teller ++;

Voeg de volgende regel aan de loop-functie:

mySerial.println (Actie1, HEX);

Als (Actie1! = Actie2)

{

Als (Actie1 == 3)

line_following.go_forward(50);

Als (Actie1 == 1)

line_following.line_following_turn_left(50);

Als (Actie1 == 2)

line_following.line_following_turn_right(50);

Als (Actie1 == 0)

line_following.go_forward(50);

}

Actie2 = Actie1;

}

Wanneer we de robot lopen onze sensorgegevens zal wirelessly afgeven aan onze computer, maar we willen niet alleen het vastleggen van de seriële gegevens met behulp van de seriële Monitor met de resultaten worden weergegeven als hexadecimale getallen.

Wij willen weergeven in real-time de feitelijke aanwijzingen die de robot wordt gegeven op basis van de sensorgegevens. We niet de seriële Monitor gebruiken om dit te doen.

We moeten een programma schrijven dat vergelijkbare logica als ons lineFollow.ino programma heeft. Dus we gaan ontwikkelen een Python programma dat de gegevens van seriële poort leest en de aanwijzingen dat de Robot heeft gekregen in plain Engels uitprinten.

Bijgevoegd is het Python programma, we zullen het analyseren van het programma in een beetje. Als u dit nog niet gedaan, verwijzen naar de eerdere blogpost "Make: it Robotics starterskit-binaire deel" 1 "en Bekijk de Video op hoe te opstelling Python op uw computer.

seriële importeren

importeren

De instructies van de import bieden bibliotheekfuncties die onze Python programma nodig om te communiceren op de seriële poort.

def main():

De instructie definieert een functie genaamd main()

ser seriële =. Seriële ('COM3', 1200, timeout = 0)

Deze verklaring maakt een seriële object en het object vertelt welke seriële poort te luisteren op, welke baudrate te gebruiken en de timeout = 0 wordt gebruikt om te lezen van de gegevens wanneer het beschikbaar is zonder te wachten.

terwijl 1:

De terwijl 1: instructie wordt gebruikt om te beginnen met een lus die wordt herhaald en eindigt niet als de voorwaarde voor 1 altijd waar is.

waarde = ser.read(1)

Hier lezen we één byte van de gegevens van de seriële poort en deze waarde aan de variabele waarde opslaan.

Als waarde > = '0' en de waarde < = '3':

Als de inhoud van de variabele waarde is tussen 0 en 3 uit te voeren van de inhoud van de als verklaring

Als waarde == '0' of waarde == '3'

"Ga door" afdrukken

Als de variabele waarde uitvoeren 1 of 3 vervolgens het afdrukken "gaan doorsturen" bericht.

Als waarde == '1':

Print "Turn Left"

Als de variabele waarde 1 is dan het bericht "Turn Left" afdrukken

Als waarde == '2':

Print "Turn Right"

Als de variabele waarde 2 is dan het bericht "Turn Right" afdrukken

Als __name__ == "__main__": main()

Als dit programma uitvoeren wordt uitgevoerd en geen bibliotheekbestand vervolgens de hoofdfunctie.

Vergeet niet dat python is een streepje gevoelige gevoelige taal. Als uw inspringing niet correct is uw programma genereert syntaxisfouten wanneer u wilt uitvoeren. Tellen uw spaties inspringen wanneer de code in je teksteditor omgaan.
Vergeet niet wanneer u uw USB-kabel in naar de Arduino zul je om te controleren of dat de seriële poort correct is voor de seriële poortinstellingen in de Arduino IDE programma aansluiten.

Verwijzen naar de blogpost "Make: it Robotics Starter Kit - vastleggen van Sensor Data" voor informatie over het bepalen van de juiste seriële poort en hoe te opstelling van de Arduino IDE.

Als u een andere USB-poort voor uw FTDI USB-kabel gebruikt, zal uw seriële poort worden ook verschillende.

Plaats uw readSerial.py-programma in een map op uw computer en start een MS-DOS-Prompt en wisseling woninggids voor naar de dezelfde maplocatie van uw readSerial.py-programma.

De opdracht uitvoeren vanaf de opdrachtprompt:

Python-runSerial.py

Als u eventuele fouten tegenkomt, controleren of uw programma runSerial.py is ingesteld op de juiste seriële poort.

Zorg ervoor dat u uw stuurprogramma bestuur en FTDI kabel correct bedraad.

Als u vreemde tekens worden afgedrukt op uw troepenleiding prompt krijgt, controleert u of dat uw baud-rate is hetzelfde in de Arduino lineFollow.ino en readSerial.py 's.

Als je gedaan hebt alles correct, wanneer uw robot volgt de zwarte lijn uw Python programma volgende produceren weergegeven in de afbeelding hierboven output moet.

Gerelateerde Artikelen

Make: it Robotics starterskit-draadloze connectiviteit

Make: it Robotics starterskit-draadloze connectiviteit

In dit blog bericht wij gaan nemen van de informatie die we geleerd hebben in de eerdere blogpost getiteld "Make: it Robotics starterskit-Software deel 2″ Real-time sensorgegevens vastleggen en verzenden van deze gegevens draadloos naar onze computer
Make: it Robotics starterskit-Driver board vertrouwd

Make: it Robotics starterskit-Driver board vertrouwd

In deze blogpost zullen we een kijkje op de kaart die bij de zorg: it Robotics Starter Kit wordt geleverd. Er is geen documentatie die wordt geleverd met de Start kit betreffende het bestuur van de bestuurder dan het schema.Tenzij u al enige ervaring
Make: it Robotics starterskit - begrip Bitwise Math

Make: it Robotics starterskit - begrip Bitwise Math

Deze blogpost is een voortzetting op mijn knutselen met de Make: it Robotics Kit. Hopelijk kan ik doorgeven op sommige van de informatie die ik heb geleerd zodat het gemakkelijker voor anderen om aan de slag over het werken met de Robotics Kit.Na het
Make: it Robotics starterskit - analyseren van de LineFollowing.ino deel 2

Make: it Robotics starterskit - analyseren van de LineFollowing.ino deel 2

In de laatste Instructable begonnen we analyseren de bitsgewijze bewerkingen in de schets van de lineFollow.ino. We keken hoe de sensor lezingen worden geïnterpreteerd zodat de robot vooruit gaan.In deze tutorial zullen we blijven onze analyse bij he
Make: it Robotics starterskit - analyseren van de LineFollowing.ino deel 1

Make: it Robotics starterskit - analyseren van de LineFollowing.ino deel 1

In onze laatste blogpost we bepaalde sensorgegevens uit de drie verschillende posities die onze robot tegenkomen kunt wanneer na de zwarte lijn, (links sensor zwart, links sensor/sensor wit, juiste sensor zwart) gevangen.In deze blogpost wij gaan nem
Twitter gecontroleerd Arduino uitgangen - geen PC - LCD Display + Sensor data naar Twitter

Twitter gecontroleerd Arduino uitgangen - geen PC - LCD Display + Sensor data naar Twitter

Control digitale uitgang pinnen door Twitter berichten. Sensor lezingen terug naar Twitter gestuurd.GEWIJZIGD door JOHN DINGLEY van Twitter2LCD oorspronkelijk geschreven door Fabrizio GranelliZie * U kunt SMS-berichten naar het Arduino LCD-scherm van
Make: it Robotics Starter Kit vastleggen van Sensor Data

Make: it Robotics Starter Kit vastleggen van Sensor Data

Laatste Instructable bespraken we een beetje over wat er in het linefollow.ino-programma doet. Ik heb gepresenteerd een Python-script dat ons toelaten zal om het analyseren van de bit-gewijze if verklaringen om te zien hoe de waarde die de methode re
Make: it Robotics Starter Kit

Make: it Robotics Starter Kit

Ik heb fijn wat vrije tijd om te beginnen werken aan C/C++ ingesloten systemen en robots. Dus in het surfen rond op Radio Shack struikelde ik over de zorg: it Robotics Starter Kit. Blijkbaar een gezamenlijke samenwerking tussen Radio Shack en de mens
How to Make Super goedkope Flex Sensor

How to Make Super goedkope Flex Sensor

Als u ooit maken van een animatronic hand die wordt gecontroleerd door uw eigen hand en dacht wilde dat betaalt ongeveer $10 voor slechts een flex sensor is een beetje teveel, dan dit instructable is voor jou.Onderdelen nodig:een stuk van IV buiselek
Sensor Data Monitoring met Edison (Intel IoT)

Sensor Data Monitoring met Edison (Intel IoT)

Dit instructable is voor de integratie van de grove sensoren en actuatoren met Intel Edison door NodeJS en monitor de gegevens van de sensoren zoals de kwaliteit van de lucht, de temperatuur, licht, geluid, aanraking en LED, zoemers.Dit vereist de kn
Ultrasone Sensor Data lezen van FireFly

Ultrasone Sensor Data lezen van FireFly

Dit Instructable zullen kijken hoe u configureert een ultrasone Sensor met behulp van Arduino en Firefly voor de opsporing van een afstand van objecten en een veranderende geometrie binnen Rhino en uiteindelijk het gebruik van de gegevens voor de bot
How to Make Taffy... Dat verandert in Hard Candy, of Fine Art

How to Make Taffy... Dat verandert in Hard Candy, of Fine Art

nogmaals een mislukte poging van mijn kant om iets te creëren. Ik realiseer me wat ik deed verkeerd hoewel en zal u begeleiden door middel van wat niet te doen als je taffy wilt of wat te doen als je hard candy wilt.. .of FineArt.Stap 1: Combineer de
Sensor Data streamen vanaf een ppDAQC Pi-Plate met behulp van InitialState

Sensor Data streamen vanaf een ppDAQC Pi-Plate met behulp van InitialState

De Pi-platenppDAQC Data acquisitie en controle aan boord is een ideale interface tussen sensoren en een Raspberry Pi. Met acht analoge en acht digitale ingangen, tot zestien kanalen van echte wereld kan gegevens worden onderschept door een enkele ppD
LinkitOne Sensor Data Logging met behulp van GoBetwino

LinkitOne Sensor Data Logging met behulp van GoBetwino

IoT projecten betrokken meestal verbinding met het internet en het posten van gegevens naar een cloud-service. Echter kunnen verschillende offlinegegevens logboekregistratie toepassingen worden ontwikkeld met behulp van de MediaTek LinkitOne platform