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

De 3D-beweging van de IMU-sensor visualiseren

Componenten en benodigdheden

Arduino UNO
× 1
Inertial Measurement Unit (IMU) (6 graden vrijheid)
× 1
Jumperdraden (algemeen)
× 1

Apps en online services

Arduino IDE

Over dit project

Laten we, voordat we in het softwaregedeelte duiken, onze hardwarekits samenstellen.

Wat is een MPU-6050-sensor De MPU-6050-apparaten combineren een 3-assige gyroscoop en een 3-assige versnellingsmeter  op dezelfde siliciumchip, samen met een ingebouwde Digital Motion Processor (DMP) , die complexe 6-assigeMotionFusion . verwerkt algoritmen. Dus nu kun je de betekenis van 6DOF-6 vrijheidsgraden ontcijferen.

Raadpleeg mijn vorige blog voor meer informatie over het verbindingsschema en de hardwareconfiguratie.

Laten we nu naar de verwerkingssoftware gaan, die de 3D-visualisatie van deze bewegingssensor zal vergemakkelijken.

Software vereist:

  • ProcessingIDE

Aangezien je ArduinoIDE al hebt geïnstalleerd met twee afzonderlijke IDE's, kun je je een beetje in de war voelen. Nou, er is geen reden tot paniek. Volg de onderstaande stappen en al uw twijfels zullen worden weggenomen!

De verwerking lijkt veel op ArduinoIDE, behalve enkele gespecialiseerde functies. Je zult dus een invloed/overeenkomst zien in ProcessingIDE.

Afbeelding 1 en Afbeelding 2  verduidelijken mijn uitspraken.

We zien dus dat er een verbluffende visuele overeenkomst is in beide IDE's. Nu u de Processing IDE hebt geïnstalleerd, moet u voor verwerkingsdoeleinden een speciale bibliotheek met de naam "Toxi" downloaden. Het vinden van een "Toxi"-bestand kan erg hectisch zijn op het world wide web. Dus ik heb het je gemakkelijker gemaakt door het naar mijn github te uploaden. Klik op deze link en download het bestand met de naam “toxiclibs-complete-0020”. Pak vervolgens de map uit. Kopieer de "toxiclibs-complete-0020"  map en plak deze onder de 'bibliotheken'  map van Processing.Kan "bibliothekenmap . niet vinden "? maak er dan een! ja. als je geen "bibliotheken . kunt vinden" " map, maak een map en noem deze "bibliotheken ". Plak nu uw "toxiclibs-complete-0020"  map erin. Nadat u deze stappen correct hebt gevolgd, voert u de Processing IDE uit. Tijd om te coderen! Om de 3D-visualisatie te visualiseren, moet u eerst de Arduino-code voor MPU-6050 uploaden (pak het .ino-bestand uit de map MPU6050_DMP6.rar). Nadat je dit hebt gedaan, moet je bepaalde wijzigingen aanbrengen, zoals hieronder. Je moet deze code becommentariëren die zegt:

#define OUTPUT_READABLE_YAWPITCHROLL door // #define OUTPUT_READABLE_YAWPITCHROLL  

verwijder evenzo de code die zegt:

//#define OUTPUT_TEAPOT door #define OUTPUT_TEAPOT  

Open vervolgens het verwerkingsvoorbeeld voor de MPU-6050. Ga naar de werkbalk, klik op Bestand -> Openen. En navigeer vervolgens naar de map waar u de MPU-6050-bibliotheek voor Arduino had geïnstalleerd. U kunt het verwerkingsvoorbeeld gemakkelijk vinden:volg de stroomvolgorde:MPU6050> Voorbeelden> MPU6050_DMP6> Processing> MPUTeapot. Zoals u deed in het geval van ArduinoIDE, controleer ook in dit geval de seriële poort die erin is gedefinieerd. Controleer nu de code. U zult zien dat de regel deze standaard definieert voor linux/mac gebruikers als:

String portName = "/dev/ttyUSB1";

U moet String portName wijzigen in de poort waarop uw Arduino is aangesloten. Zie afbeelding 3.

Voor vensters gebruikers, becommentarieer deze code als:

//String portName = "/dev/ttyUSB1";

Op dezelfde manier kunt u deze code verwijderen als: 

//String portName ="COM15"; door String portName ="COM15";

Vervang "COM15 " met de COM-poort waarop je arduino is aangesloten (controleer dit door naar arduino en Tools -> Serial Port te gaan). Zo, eindelijk is de installatie voltooid, nu is het slechts een kwestie van een paar minuten! Upload de Arduino-code (MPU6050_DMP6) via Arduino.Opmerking: OPEN DE SERILE MONITOR NIET terwijl het proces aan de gang is. (Waarom? omdat we de code zullen visualiseren op ProcessingIDE in plaats van ArduinoIDE)

Voer vervolgens de verwerkingscode (MPUTeapot) uit door op de knop met "play"  te drukken symbool. U ziet een klein vliegtuigachtig object. Wacht ongeveer 10-12 seconden totdat de MPU-6050-waarden zijn gestabiliseerd. Daarna ziet u het 3D-model overeenkomstig bewegen met de MPU-6050-sensor. Raadpleeg de onderstaande GIF. Ga voor een beter begrip naar YouTube

Ontwerp je eigen aangepaste Flight simulator Instruments in mijn volgende tutorial.

Gelieve hieronder te reageren als u problemen ondervindt met betrekking tot de hardware / software-installatie.

Code

Voltooi projectcode
Download deze map en volg de instructies die in deze tutorial zijn gespecificeerd.https://github.com/AritroMukherjee/MPU5060sensor/blob/master/MPU6050.zip

Schema's

Volg mijn vorige blogpost voor een stapsgewijze zelfstudie over het instellen van een IMU (MPU-6050) sensor met een Arduino. Link (https://www.hackster.io/Aritro/getting-started-with-imu-6-dof-motion-sensor-96e066)

Productieproces

  1. IMU-sensorwerking en zijn toepassingen
  2. Logic-X lanceert nieuw merk COTS-sensorverwerkingsproducten
  3. Computervisie als bewegingssensor voor SmartThings
  4. Bewegingssensor, alarm, video-opname in HA op Raspberry Pi
  5. DIY infrarood bewegingssensorsysteem voor Raspberry Pi
  6. Bewegingssensor met Raspberry Pi
  7. Raspberry Pi-temperatuursensor
  8. Raspberry Pi GPIO met PIR-bewegingssensor:beste tutorial
  9. Interfacing HC-SR501 PIR-bewegingssensor met Raspberry Pi
  10. Emotiesensor / EEG
  11. Elektronische huidsensor decodeert menselijke beweging