ArduinoSimulator

Inhoudsopgave

De handleiding voor de Arduino IO Simulator kent een uitvoering voor gebruik in combinatie met Microsoft Windows en AppleOSX. De verschillen hebben vooral betrekking op de manier waarop beide besturingssystemen reageren op Arduino IDE en Arduino Simulator.

ARDUINO IO SIMULATOR Gebruikershandleiding MacOS

Deze handleiding beschrijft alle kenmerken en mogelijkheden van de Arduino Simulator voor het besturingssysteem MacOS.

XEVRO Copyright 2019 Versie 1.5.3 Nederlandse bewerking Paulus van Galen Copyright 2020

INHOUDSOPGAVE

  • 1. Introductie
  • 2. Installatie
  • 3. Bediening
  • 4. Arduino Simulator code
  • 5. Arduino IDE
  • 6. Configureer de seriële poort
  • 7. Analoge & digitale IO
  • 8. Instellingen bewaren/terugzetten
  • 9. Schermresolutie
  • 10. Talen
  • Bijlagen
    • I. Arduino IO Simulator functies
    • II. Lijst met figuren

1. INTRODUCTIE

De Arduino Simulator beschikt over alle gereedschappen en onderdelen om de Arduino UNO IO te simuleren. De ontwikkeling gaat nog steeds door om ook toekomstige IO functies aan te kunnen. Het maakt het mogelijk snel een klein project op te zetten en te testen, zonder dat een fysieke verbinding met de externe IO componenten gemaakt hoeft te worden. De knoppen, LED’s, weerstanden, etc. kunnen dus in de doos blijven.

Een simulatiesysteem bestaat uit een Arduino UNO en de drie programma’s:

    • - Arduino Simulator                                                                              
    • - Arduino IDE 
    • - Java-JDK  
      Voor het downloaden van de Java-JDK kan gebruik gemaakt worden van de onderstaande link of de download link op de website van Xevro.
      – https://xevro.be/support/installation-support.html#SimulatorMac
      – https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html(goedkeuren URLs) 
      Arduino IDE is vrij te downloaden bij Arduino.
      – http://arduino.cc/en/Main/Software(goedkeuren URLs) 










      1.1 ARDUINO IO SIMULATOR SCHEMA

fig. 2

2. INSTALLATIE

  • 0. Sla alle downloads op in een aparte map; bv. [Project Arduino-IO-Simulatie]. Hierop kan worden teruggevallen voor het geval er in een later stadium iets fout gaat.
  • 1. Java1-JDK is de Java Development Kit van Oracle. Java is een essentieel onderdeel om Arduino Simulator te kunnen starten. Het zorgt er o.a. voor dat de licentiecode kan worden ingevoerd. Java-JDK kan geïnstalleerd worden …. (aanvullen)

N.B. Java-JDK is als regel niet standaard geïnstalleerd.

  • 2. Arduino IDE is de programmeeromgeving van Arduino. Het programma is onmiddellijk bruikbaar na het downloaden. Zet het programma in de map [Programma’s].
  • 3. Arduino Simulator is het programma waarmee het gedrag van de in~ en uitvoer van de Arduino weergegeven kan worden. Zet het programma in de map [Programma’s].

N.B. Zet niet de gehele map, waarin Arduino Simulator wordt gedownload, in de map [Programma’s], maar alleen het programma zelf.

  • 4. Kopieer de licentiecode, die via de e-mail is toegezonden.
  • 5. De eerste maal dat Arduino Simulator wordt gestart verschijnt er een venster waarin om een wachtwoord wordt gevraagd. Dit is een éénmalige actie. Na het invoeren van het wachtwoord sluit het venster automatisch. Deze actie bewerkstelligt de juiste lees~ en schrijfrechten voor de map [Java/extensions]. In deze map bevindt zich het stuurprogramma {Serial driver} van Arduino Simulator.

2.1 ACTIVERING LICENTIE CODE

Arduino Simulator is vrij beschikbaar, maar wel beveiligd met een licentiecode. De eerste keer, na installatie, dat het programma wordt geopend verschijnt een venster waarin deze licentiecode moet worden geactiveerd.

Fig.3 In het veld ‘Change Product Key’ : licentiecode en sluit deze actie af via de knop ‘activate’.

  Fig.4                          

3. BEDIENING

Arduino Simulator werkt correct door de volgende zes stappen in acht te nemen:

  • 1. Sluit een Arduino bord aan op de computer m.b.v. de USB-kabel.
  • 2. Start [Arduino IDE] en laad een {SKETCH}; inclusief de bijbehorende bibliotheek.
  • 3. Pas de {SKETCH} in [Arduino IDE] aan op basis van de Arduino Simulator instructie codes. Zie 4. ARDUINO SIMULATOR CODE en de Bijlage.
  • 4. Laad de {SKETCH} in het Arduino bord.
  • 5. Start Arduino Simulator en selecteer de te gebruiken in~ en uitvoerkanalen.
  • 6. Verbind Arduino Simulator met het Arduino bord d.m.v. de knop ‘CONNECT’.

Arduino Simulator ondersteunt een groot aantal Arduino borden:

    • Arduino UNO 
    • Arduino Mega 
    • Arduino Nano 
    • Arduino Micro 
    • Arduino Leonardo 
    • Arduino ... 

N.B.

I.p.v. de stappen 2 en 3 kan natuurlijk ook direct begonnen worden met een {SKETCH} vanuit de voorbeelden in de bibliotheek van Arduino Simulator.

N.B. 2

Arduino Simulator ondersteunt alleen de gedefinieerde analoge en digitale kanalen (pinnen).

Fig.5

4. ARDUINO SIMULATOR CODE

De instructies, die gebruikt worden in Arduino Simulator wijken op een aantal punten af van de instructies bij [Arduino IDE]. De begrippen zijn gehandhaafd, maar de schrijfwijze wijkt af. Zie de volgende voorbeelden. De eerste term is die van [Arduino IDE]; de tweede die in Arduino Simulator.

    • digitalWrite(13, HIGH);   	---> DigitalWrite(13, HIGH); 	let op de hoofdletter
    • lcd.print("x");            	---> lcdprint("x"); 			let op de punt

Meer informatie op de website: https://xevro.be/support/simulator-man- ual-support.html#SimulatorIO

5. ARDUINO IDE

Open een nieuw {sketch} (xx.ino) Het Simulator UNO-programma (.ino) en de Simulator bibliotheek “SimulatorProgram.h” staan onder de tab Help van de werkbalk.

Fig. 6 Start de “Arduino UNO programmeer code” (tekst). Eigen code kan hieraan worden toegevoegd. Deze kan vervolgens, na uploaden, worden getest met Arduino Simulator. N.B.: De bibliotheek “SimulatorProgram.h” is een onderdeel van de standaard code in Arduino Simulator. Nieuw programma uploaden naar de Arduino UNO

    • Start de Arduino IDE 
    • Open de {Sketch} 
    • Verbind de Arduino UNO met de Mac via de  USB-kabel. 
    • Selecteer in Arduino IDE het juiste bord “Arduino UNO” 
    • Selecteer de juiste seriële poort 
    • Upload de {Sketch} naar de Arduino UNO. 

6. CONFIGUREER DE SERIËLE POORT

Selecteer de Com poort Selecteer de seriële port; aansluiting van de USB-kabel aan de Mac. Arduino Simulator ontdekt de Arduino UNO automatisch en kleurt … ‘rood’. Selecteer de BaudRate De BaudRate staat initieel op 9600. Zo niet dan dient deze te worden aangepast. In de {Sketch} en in de Arduino Simulator.

Before the selection After the selection Attention:

    • -  At start-up, we also see the state of the simulator at the bottom of the serial port: 
    • -  Once you have selected the correct serial port changes to this text: 
      You will get an error message when you want to connect with a pin that is already used. 

7. ANALOGE & DIGITALE IO

Digitale invoer~/ uitvoerkanalen De Arduino UNO heeft 14 digitale in~/uitvoerkanalen (IO-pinnen). Deze kanalen hebben de aanduidingen: D0 t/m D13. In Arduino Simulator wordt een gekozen kanaal met een rode tekst aangeduid; op de Arduino UNO in het Arduino Simulator schema op de Mac.

7.1 KNOPPEN

Voor de 14 digitale in~/uitvoerkanalen (IO-pinnen) zijn 8 KNOPPEN beschikbaar. In de combinatiebox (INPUTS) van Arduino Simulator wordt een KNOP gekoppeld aan een van de 14 IO pinnen. De lichtblauwe pin kan worden gebruikt om de knop ingedrukt te houden en tegelijkertijd andere dingen te doen. De rand verkleurt naar rood wanneer de knop is ingedrukt. KNOPPEN worden aangestuurd via de DigitalRead() code.

Fig. 18

7.2 LEDS

Voor elk van de 14 IO-pinnen van de Arduino UNO is een LED beschikbaar. In de combinatiebox (OUTPUTS) van Arduino Simulator wordt een LED gekoppeld aan een van de 14 IO pinnen. LED’s worden aangestuurd via de DigitalWrite() code.

Fig. 19

7.3 BUZZER

Met de BUZZER wordt een geluid met een bepaalde frequentie voortgebracht. In de combinatiebox (BUZZER) van Arduino Simulator wordt een BUZZER gekoppeld aan een van de 14 IO pinnen. De BUZZER wordt aangestuurd via de DigitalWrite() code. Een DigitalWrite(pin, HIGH); in de {Sketch} levert een geluid met een instelbare frequentie op. N.B. Gebruik het schuifmechanisme om de frequentie te wijzigen.

Fig. 20

7.4 7-SEGMENTEN DISPLAY

De 7 pinnen van het 7-SEGMENTEN DISPLAY kunnen worden gekoppeld aan de digitale pinnen (D0 - D6). De display kan zowel via de gemeenschappelijke anode als kathode gekoppeld worden. De 7-SEGMENTEN DISPLAY wordt aangestuurd via de DigitalWrite(D0-6) code. Voorbeeld: Parking.

Fig. 20

7.5 SLIDERS

De 3 SLIDERS (INPUTS) kunnen worden gekoppeld aan de analoge pinnen (A0 – A5). De SLIDERS worden uitgelezen via de AnalogRead() code. Op de Arduino UNO wordt de waarde van de betreffende SLIDER getoond.

Fig. 22

7.6 GELUIDSDETECTIE

GELUIDSDETECTIE stuurt, afhankelijk van het geluidsniveau, een analoog signaal (1-1023) naar de Arduino UNO. In de combinatiebox (GELUIDSDETECTIE) van Arduino Simulator wordt een signaal gekoppeld aan een van de 6 analoge IO pinnen (A0-A5). GELUIDSDETECTIE start via de knop “Start geluidsdetectie”. Indien het waargenomen geluisniveau de ingestelde waarde overschrijdt wordt een signaal van een bepaalde sterkte (0-1023) naar de Arduino UNO gestuurd. De grenswaarde in de {Sketch} moet lager zijn dan de waarde in het veld “Geluidsdetectie”. Het signaal wordt alleen gestuurd als het geluidsniveau de opgegeven (minimum) waarde heeft bereikt. GELUIDSDETECTIE wordt aangestuurd via de AnalogRead() code.

Fig. 23

7.7 STAAFDIAGRAM

STAAFDIAGRAM kan met een van de 6 digitale PMW-pinnen van de Arduino UNO verbonden worden. STAAFDIAGRAM toont het % van de waarde (0-1023). Dit kan worden gebruikt om een PWM-signaal te simuleren. STAAFDIAGRAM wordt aangestuurd via de AnologWrite(pin, value) code. Voorbeeld: Geluidsschakelaar

Fig. 24

7.8 GELUIDSGENERATOR

GELUIDSGENERATOR kan met een van de 6 digitale PMW-pinnen van de Arduino UNO verbonden worden. De frequentie heeft een bereik van 10Hz tot 10KHz. De tijd waarin het signaal hoorbaar is is instelbaar (1-10.000 millisec). GELUIDSGENERATOR wordt aangestuurd via de AnologWrite(pin, value) code.

Fig. 25

7.9 SERVO

SERVO kan alleen met de digitale pin (D12) van de Arduino UNO verbonden worden. De mate van rotatie in graden (°) is in venster van SERVO zichtbaar.the servo. SERVO wordt aangestuurd via de MyservoWrite(pin, waarde) code.

Fig. 26

7.10 LCD DISPLAY

LCD DISPLAY kan met de pinnen (D2 & D5) plus (D11 & D12) van de Arduino UNO verbonden worden.by connecting D2-5, D11 and D12. All the instruction that controls the LCD are changed by removing the ‘.’ point. LCD DISPLAY wordt aangestuurd via de lcdprint() code.

Fig. 27

7.11 TOONGENERATOR

TOONGENERATOR kan alleen met de digitale pin (D8) van de Arduino UNO verbonden worden. Frequentie (Hz) en tijdsduur (millisec) van de klank worden getoond in de groene velden. TOONGENERATOR wordt aangestuurd via Tone(8, f, d); en NoTone(8); f = frequency d = tijdstijd. No Tone() stopt de klank. Voorbeeld: Tone Melody

Fig. 28

7.12 BLOKGOLF

BLOKGOLF zend puls-signalen naar de Arduino UNO. De grijze blokken worden “rood” als he tsignaal ‘hoog’ is.when the signal is high you see the grey square lights up ‘red’. De combinatiebox “Blok golf” wordt gebruikt om te koppelen via een van de zes analoge pinnen (A0-A5 = D14-19). Indrukken van de ‘SquareWave’ knop opent een tweede venster met een schuifmechanisme om de frequentie aan te passen. BLOKGOLF wordt aangestuurd via deDigitalRead() code.

Fig. 29

8. INSTELLINGEN BEWAREN/TERUGZETTEN

In de werkbalk van Arduino Simulator staan onder de tab “Bestand” de opties ‘Sla instellingen op’ en ‘Instellingen terugplaatsen’. Gebruikelijk worden de termen ‘Save’ en ‘Restore’ gebruikt. ‘Save’ slaat de geselecteerde I/O en ingevulde teksten op. ‘Restore’ herstelt eerder op geslagen instellingen. Het opgeslagen bestand kan de extensie *.sav of *.txt krijgen.

9. SCHERMRESOLUTIE

Er zijn zes opties:

    • -  13 inch MacBook pro size 
    • -  Resolutie: 1024 x 768 
    • -  Resolutie: 1336 x 768 (MacBook Air 11”)
    • -  Resolutie: 1920 x 1080 
    • -  Full Screen (iMac) 
    • -  Variable resolution (min: 500, max: 2000) 




    Fig. 34           

Fig. 35

10. TALEN

head 1head 2head 3
cell 1cell 2cell 3

Er kan met verschillende talen gewerkt worden. Standaard staat Arduino Simulator ingesteld op de taal Engels. Voor deze handleiding is gekozen voor de Nederlandse taal. Er zijn 21 talen beschikbaar waarvan er 5 zullen worden toegevoegd aan Arduino Simulator. Dat zijn: Hindi, Italiaans, Oekraïens, Pools en Russisch.

    || border=1
    ||! head 1 ||! head 2 ||! head 3 ||! head 4
    || cell 1  ||  cell 2 ||  cell 3 || cell 4 ||
    • -  || Arabisch || 			Hindi ||			Nederlands. ||		Slowaaks ||
    • -  || Chinees (Mandarin) ||	Hongaars	||	Oekrainisch	||	Spaans ||
    • -  || Duits ||			        Italiaans	||	        Pools	||		Thai ||
    • - ||  Engels || 			        Japans. ||		        Portugees ||		Tsjechisch ||
    • -   || Frans 		||	        Kroatisch ||		Russisch. ||		        Turks	||
    • -  || Vietnam  ||	

Fig. 36

BIJLAGEN

I. Arduino IO Simulator functies

Arduino Arduino IO Simulator Kenmerk digitalWrite(x,y); DigitalWrite(x,y); D versus d digitalRead(x); DigitalRead(x); D versus d analogWrite(x,y); AnalogWrite(x,y); A versus a analogRead(x); AnalogRead(x); A versus a

myservo.write(x); myservowrite(x); no (.) versus (.) Serial.print(x); Serialprint(x); no (.) versus (.)

tone(x,y ,z); Tone(x,y ,z); T versus t noTone (x); NoTone (x); N versus n

lcd.setCursor(x,y); lcdsetCursor(x,y); no (.) versus (.) lcd.print(long x); lcdprint(long x); no (.) versus (.) lcd.print(“x”); lcdprint(“x”); no (.) versus (.) lcd.autoscroll(); lcdautoscroll(); no (.) versus (.) lcd.noAutoscroll(); lcdnoAutoscroll(); no (.) versus (.) lcd.clear(); lcdclear(); no (.) versus (.) lcd.display(); lcddisplay(); no (.) versus (.) lcd.noDisplay(); lcdnoDisplay(); no (.) versus (.) lcd.blink(); lcdblink(); no (.) versus (.)

BIJLAGEN

II. Lijst met figuren