Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

AR DRONE en 1SHEELD - Ontdek de wereld rondom je drone

Componenten en benodigdheden

Arduino Mega 2560
× 2
1Sheeld
× 1
AR DRONE 2.0
× 1
xbee
× 2

Over dit project

Ons project ziet de besturing van verschillende vluchtgegevens die door een smartphone zijn vastgelegd en in realtime naar uw pc worden verzonden, zoals versnellingsmetersensor, gps-positie, ruisdrone, oriëntatie, gyroscoop en meer.

We gebruiken twee Arduino voor gegevenscontrole, één gemonteerd op de drone en één op de computer, twee xBee om externe gegevens van de 1sheeld naar uw pc te communiceren.

Een leuke en gemakkelijke manier om te profiteren van alle functies en sensoren van de smartphone, en ook om mooie foto's te maken;)



Code

  • Hoofdcode
  • Slaaf
HoofdcodeC/C++
Deze code wordt geladen op arduino die is aangesloten op de pc, om de Arduino op drone te besturen
eerst moet je de bibliotheek downloaden https://www.pjrc.com/teensy/td_libs_AltSoftSerial.html
#include int verifica=0;AltSoftSerial xBee;char c;char h;char stop='s '; ongeldige setup() { Serial.begin(115200); Serial.println("Master OK"); Serieel.println(); Serial.println("Cijfer voor:"); Serial.println ("'o' oriëntatiesensorwaarde"); Serial.println ("'a' versnellingssensorwaarde"); Serial.println ("'b' helderheidssensorwaarde"); Serial.println ("'g' GPS-positie"); Serial.println ("'m' microfoonruis"); Serial.println("'p' neem een ​​foto"); xBee.begin(9600);}void loop() { Serial.flush(); if (Serial.available()>0) { c =Serial.read(); if(c=='o'||c=='a'||c=='m'||c=='g'||c=='b'||c=='p'){ //----------Oriëntatie------------------------------------- ---- if(c=='o'){ Serial.println("Oriëntatie"); c='1'; xBee.print(c); for(int i=0; i<10;i++){vertraging (20); c='o'; xBee.print(c); doe{ h=0; h=xBee.lezen(); Seriële.print(h); } while(xBee.available()>0); vertraging (100); ik=i-1; if(Serial.available()>0); if(stop==Serial.read()){ Serial.println("Analyse gestopt"); c='0'; Serieel.println(); Serial.println("Cijfer voor:"); Serial.println ("'o' oriëntatiesensorwaarde"); Serial.println ("'a' versnellingssensorwaarde"); Serial.println ("'b' helderheidssensorwaarde"); Serial.println ("'g' GPS-positie"); Serial.println ("'m' microfoonruis"); Serial.println("'p' neem een ​​foto"); xBee.print(c); ik=11; } } } //---------- Acceleratie---------------------------------- ------- if(c=='a'){ Serial.println("Versnelling"); c='2'; xBee.print(c); for(int i=0; i<10;i++){vertraging (20); c='een'; xBee.print(c); doe{ h=0; h=xBee.lezen(); Seriële.print(h); } while(xBee.available()>0); vertraging (100); ik=i-1; if(Serial.available()>0); if(stop==Serial.read()){ Serial.println("Analyse gestopt"); c='0'; Serieel.println(); Serial.println("Cijfer voor:"); Serial.println ("'o' oriëntatiesensorwaarde"); Serial.println ("'a' versnellingssensorwaarde"); Serial.println ("'b' helderheidssensorwaarde"); Serial.println ("'g' GPS-positie"); Serial.println ("'m' microfoonruis"); Serial.println("'p' neem een ​​foto"); xBee.print(c); ik=11; } } } //----------Helderheid---------------------------------- ------ if(c=='b'){ Serial.println("Helderheid"); c='3'; xBee.print(c); for(int i=0; i<10;i++){vertraging (20); c='b'; xBee.print(c); doe{ h=0; h=xBee.lezen(); Seriële.print(h); } while(xBee.available()>0); vertraging (50); ik=i-1; if(Serial.available()>0); if(stop==Serial.read()){ Serial.println("Analyse gestopt"); c='0'; Serieel.println(); Serial.println("Cijfer voor:"); Serial.println ("'o' oriëntatiesensorwaarde"); Serial.println ("'a' versnellingssensorwaarde"); Serial.println ("'b' helderheidssensorwaarde"); Serial.println ("'g' GPS-positie"); Serial.println ("'m' microfoonruis"); Serial.println("'p' neem een ​​foto"); xBee.print(c); ik=11; } } } //----------GPS---------------------------------- ------- if(c=='g'){ Serial.println("Posizione GPS'"); c='4'; xBee.print(c); for(int i=0; i<10;i++){vertraging (20); c='g'; xBee.print(c); doe{ h=0; h=xBee.lezen(); Seriële.print(h); } while(xBee.available()>0); vertraging (500); ik=i-1; if(Serial.available()>0); if(stop==Serial.read()){ Serial.println("Analyse gestopt"); c='0'; Serieel.println(); Serial.println("Cijfer voor:"); Serial.println ("'o' oriëntatiesensorwaarde"); Serial.println ("'a' versnellingssensorwaarde"); Serial.println ("'b' helderheidssensorwaarde"); Serial.println ("'g' GPS-positie"); Serial.println ("'m' microfoonruis"); Serial.println("'p' neem een ​​foto"); xBee.print(c); ik=11; } } } //----------MICROFONO---------------------------------- ------- if(c=='m'){ Serial.println("Microfoon"); c='5'; xBee.print(c); for(int i=0; i<10;i++){vertraging (20); c='m'; xBee.print(c); doe{ h=0; h=xBee.lezen(); Seriële.print(h); } while(xBee.available()>0); vertraging (100); ik=i-1; if(Serial.available()>0); if(stop==Serial.read()){ Serial.println("Analyse gestopt"); c='0'; Serieel.println(); Serial.println("Cijfer voor:"); Serial.println ("'o' oriëntatiesensorwaarde"); Serial.println ("'a' versnellingssensorwaarde"); Serial.println ("'b' helderheidssensorwaarde"); Serial.println ("'g' GPS-positie"); Serial.println ("'m' microfoonruis"); Serial.println("'p' neem een ​​foto"); xBee.print(c); ik=11; } } } //----------AFBEELDINGEN---------------------------------- ------- if(c=='p'){ Serial.println("Maak een foto"); c='6'; xBee.print(c); vertraging(20); c='p'; Serieel.println(); Serial.println("Cijfer voor:"); Serial.println ("'o' oriëntatiesensorwaarde"); Serial.println ("'a' versnellingssensorwaarde"); Serial.println ("'b' helderheidssensorwaarde"); Serial.println ("'g' GPS-positie"); Serial.println ("'m' microfoonruis"); Serial.println("'p' neem een ​​foto"); xBee.print(c); } } }}
Slaaf C/C++
Deze code wordt geladen sull'arduino die op de drone wordt gemonteerd, die de gegevens aan de drone naar de grond zal verstrekken
eerst moet je de bibliotheek downloaden https://www.pjrc.com/teensy/td_libs_AltSoftSerial.html
en http://1sheeld.com/downloads/
#include #includechar variabile;AltSoftSerial xBee;char master;int voce=0;void setup(){ Serial.begin (115200); Serial.println ("Slaaf ok"); OneSheeld.begin(); xBee.begin(9600);}void loop(){ ReceiveEvent(); requestEvent();}void ReceiveEvent(){ while(xBee.available()>0){ master=xBee.read(); variabel=master; }}void requestEvent(){ if(variabile=='o'){ xBee.print("Asse x:"); xBee.print(OriëntatieSensor.getX()); xBee.print(" Asse y:"); xBee.print(OriëntatieSensor.getY()); xBee.print(" Asse z:"); xBee.println(Oriëntatiesensor.getZ()); variabel=0; } if(variabile=='a'){ xBee.print("Asse x:"); xBee.print(VersnellingsmeterSensor.getX()); xBee.print(" Asse y:"); xBee.print(VersnellingsmeterSensor.getX()); xBee.print(" Asse z:"); xBee.println(VersnellingsmeterSensor.getX()); variabel=0; } if(variabile=='g'){ xBee.print("Longitudine:"); xBee.print(GPS.getLongitude()); xBee.print(" Latitudine;:"); xBee.println(GPS.getLatitude()); variabel=0; } if(variabile=='m'){ xBee.print("db:"); xBee.println(Mic.getValue()); variabel=0; } if(variabile=='b'){ xBee.print("Lumen:"); xBee.println(LightSensor.getValue()); variabel=0; } if(variabile=='p'){ Camera.setFlash(ON); Camera.rearCapture(); xBee.println("Foto's genomen"); variabel=0; } if(variabile=='1'){ TextToSpeech.say("analyse-oriëntatie"); variabel=0; } if(variabile=='2'){ TextToSpeech.say("analyseversnelling "); variabel=0; } if(variabile=='3'){ TextToSpeech.say("analyse helderheidsintensiteit"); variabel=0; } if(variabile=='4'){ TextToSpeech.say("analyse GPS-positie"); variabel=0; } if(variabile=='5'){ TextToSpeech.say("analyse decibelruis"); variabel=0; } if(variabile=='6'){ TextToSpeech.say("Een foto maken"); variabel=0; } if(variabile=='0'){ TextToSpeech.say("analyse gestopt"); variabel=0; }}

Schema's

Dit is de verbinding tussen Arduino en xbee, hetzelfde voor de Arduino die verbinding maakt met de computer en de Arduino op drone

Productieproces

  1. Cloud en hoe het de IT-wereld verandert
  2. Reality checks ondergaan door de verfindustrie over de hele wereld
  3. De Drone Pi
  4. Je smartphone en de connected car
  5. 6 manieren waarop AI en IoT uw bedrijfswereld in 2019 transformeren
  6. The Edge en IoT:inzichten uit IoT World 2019
  7. AI kan nu informele nederzettingen in de wereld detecteren en in kaart brengen
  8. De composietenwereld in Israël en de VS dienen
  9. De voor- en nadelen van het coaten van uw pomp
  10. Onderhoudsdocumentatie en 's werelds beste eiermand 
  11. De nauwkeurigheid en prestaties van uw waterstraalsnijmachine verbeteren