Stap 10: Toewijzen versnellingsmeter-gegevens
Nu we bij het leuke komen deel, rommelen met de Arduino schets! Als het compileren van uw schets niet zie de laatste stap van dit instructable.
Op dit punt moet je nu je Arduino aangesloten op uw HC-06 en je moet Amarino duwen nummers aan uw Arduino via Bluetooth. Dubbel te controleren om ervoor te zorgen dat de HC-06 nog steeds is gebonden en uploaden van de volgende schets aan de Arduino. (Verbonden aan deze stap).
Opmerking: Bij het uploaden van schetsen aan de Arduino zal u wilt loskoppelen van de TX en de RX van de HC-06 van de Arduino. De Arduino kan niet worden geüpload naar terwijl de RX en TX zijn aangesloten op iets.
Na het uploaden van deze schets aan de Arduino openstellen de seriële monitor. U ziet drie getallen door elkaar gegooid samen gescheiden door een vak (□). Voorbeeld: [0.01□0.02□□9.21] de eerste twee nummers zijn roll en de toonhoogte. Ik heb niet zelfs proberen uitzoeken wat de derde was :D. Uw telefoon al kan dan niet vergelijkbaar met dit. Om te zoeken naar die nummers zijn rollen en welke nummers zijn worp zijn voor uw telefoon als volgt.
- Zet uw telefoon op een plat oppervlak. Oriënteer je telefoon zodat de camera/oor spreker naar links wijst en de microfoon is naar rechts wijzen. (foto 2).
- Kantelen van de linker kant van de telefoon omhoog (foto 3) (langs de Z-as, zie afbeelding 1 voor de as) op 45 graden. Opmerking welke nummer drastisch in de seriële monitor verandert. Dit nummer wordt uw rollen.
- Kantelen van de telefoon naar u toe (foto 4) (langs de X-as, zie afbeelding 1 voor de as) op 45 graden. . Ongeacht aantal wijzigingen is drastisch toonhoogte. Record.
Nu we weten welke twee getallenreeksen het resultaat zijn roll en de toonhoogte we kunnen gaan en de code te wijzigen. We zullen een kijkje nemen op sectie 2.
pitch = data[0]; roll = data[1];
Als u eerder in de code gekeken, zult u merken dat de versnellingsmeter-gegevens in een matrix wordt gezet. De matrix "gegevens" heeft drie 'spots' genaamd 'indexen' voor getallen, index 0, index 1 en index 2. Nu dat je weet welke getallen vertegenwoordigen pitch en roll kunt u het gehele getal "pitch" en "" naar de juiste getallen in de matrix rollen. Voorbeeld: als de derde reeks getallen veranderde toen uw gekanteld uw telefoon links/rechts, die rollen, we zouden en wijzigt vervolgens de code in dit:
roll = data[2];
En het is zo simpel. Als je telefoon vergelijkbaar is met de mijne dan het nummer van de eerste worp, het tweede getal roll, en de derde nummer we sommige andere aspect van de drie dimensies.