Stap 5: De arduino firmware
Als je nog steeds hebt gewerkt met de arduino IDE gelieve te springen neer aan de SW beschrijving.
Anders moet u de arduino IDE worden geïnstalleerd (download pagina).
Download het bestand (zie hieronder) SoftwareSerial.zip, pak het en kopieert u de map SoftwareSerial in de submap bibliotheken voor de Arduino IDE-map. U kunt nu downloaden (zie hieronder) de MOTORBG.ino bestand en open het in de arduino IDE.
SW beschrijving (MOTORBG.ino)
Enkele concepten zijn opgenomen in deze software:
- Een object met de naam mySerial met de SoftwareSerial-bibliotheek wordt geïnstantieerd uitgaande RXD PIN nr. 11 en TXD PIN nr. 12
- PIN 3 en 6 (SX_MT = linker motor en DX_MT = juiste motor) zijn setted voor OUTPUT.
- Initialiseren van de seriële poort (serial.begin(38400)) voor communicatie met de PC
- Het mySerial-object (mySerial.begin(38400)) voor communicatie met de HC-05 module initialiseren
- In de setup instellen functie de analogWrite voor PINS 3 en 6 tot en met de maximale output (255) Dit betekent dat het niveau van een hoge spanning (5V nominaal) wordt toegepast zowel op PIN 3 en 5 van IC1. Ervan uitgaande dat R1 en R2 grastrimmers zijn ingeschakeld om ongeveer 1V toegepast op de inverterende ingangen (PIN 2 van IC1A) en PIN 6 van IC1B de resultaten van beide opamp (PIN 1 en 7) zijn hoog en de PNP BJT Q1 en Q2 zijn uitgeschakeld. Er PIN 3 en 6 van de arduino zijn PWM (8 bit) output die drive motoren "achteruit": wanneer zijn setted tot en met 255 motoren liggen, wanneer zijn setted tot 0 motoren leveren volledige macht (en snelheid). Tussenliggende waarden toestaan een snelheid van tussen de 0 en de maximaal mogelijke snelheid instellen.
- lus functie: wanneer de android app Stuur een tekenreeks in de notatie AhklPxyz (dus de lengte van de tekenreeks is altijd 8 en Ahkl betekent een hoek van hkl graden en Pxyz een kracht of snelheid van xyz procent van maximaal) de output van mySerial.available() krijgen waar en de tekenreeks met de naam "opdracht" het verwerven van een nieuw karakter door de HC-05-module. Na het blok van de while de opdrachtreeks hebben dezelfde indeling van de doorgegeven tekenreeks. De outled functie is genoemd, en zet de uitgang van de PWM (van twee motors) afhankelijk van "angolo" (0 tot 360 graden) en "potenza" (0 tot 100).
- De functie StrToInt een reeks van 3 tekens (d.w.z. "034") in het geheel getal (d.w.z. 34) converteren.
Hoe u het programma in de arduino Pro Mini
Als u vorige geüpload een programma naar een arduino Pro Mini gelieve gaat u naar stap 6.
Anders lezen het volgende.
In de bovenstaande afbeelding kunt u zien (van links naar rechts) de arduino Mini Pro (zonder de draad gesoldeerd omdat is'nt belangrijk hier) en de "6-pins USB 2.0 to TTL UART Module". Ze zijn verbonden door een kabel van de 4 draad eindigend met female-female-connectors. Het schema van verbindingen is heel eenvoudig:
- GND arduino aan GND USB_to_TTL
- VCC arduino aan + 5V USB_to_TTL
- RXD arduino aan TXD USB_to_TTL
- TXD arduino aan RXD USB_to_TTL
U moet downloaden en installeren van de USB_to_TTL-besturingsbestanden voor windows te vinden op de introductiepagina van dit artikel. Daarna het USB_to_TTL-apparaat aansluit op een USB-poort van uw PC en niet toestaan dat een stuurprogramma zoeken van internet. Als het apparaat correct is geïnstalleerd kunt u in de windows device manager door te klikken op poorten (COM- en LPT) zoiets als "Silicon Labs CP210x USB to UART Bridge (COMn)" waarbij n van COMn staat voor het nummer van de poort toegewezen aan het apparaat. In de arduino IDE moet je keuze in het menu Extra hetzelfde poortnummer, het bord "Arduino Pro of Pro Mini" en de processor "ATmega328 (5V, 16 MHz).
Ten slotte kunt u het uploaden van het programma in de Pro Mini Arduino board in deze modus: na de broncode (MOTORBG.ino) hebben geladen Klik met de linkermuisknop op de pijl-rechts (compileren en uploaden) een beetje naar beneden naar de menubar in de arduino IDE. Ten eerste: u leest in de status balk (aan de onderkant) "compileren schets"; (continuosly) de resetknop (in de arduino board) drukt u op totdat u "Uploaden" in de statusbalk zo lezen alleen nu kunt u het vrijgeven van het TERUGSTELLENKNOOP.
Alleen op die manier kunt u de firmware uploaden in de Raad van bestuur.
Nu de android App.