1 Communicatie via de CAN-bus met Arduino-shield

Maat: px
Weergave met pagina beginnen:

Download "1 Communicatie via de CAN-bus met Arduino-shield"

Transcriptie

1 Hoofdstuk CAN-shield E. Gernaat (ISBN ) 1 Communicatie via de CAN-bus met Arduino-shield 1.1 Toelichting bij de Arduino CAN-opdrachten Aan het einde van dit hoofdstuk en in het laatste hoofdstuk is het benodigde materiaal te vinden. Voorbereidende werkzaamheden Solderen van de aansluitpinnen op de CAN-shield; USB-connector isoleren met stukje isolatieband. 1.2 Overzicht van de bijbehorende Arduino oefen-software We onderscheiden zendende en ontvangende programma s. Het ontvangen van de CAN-boodschappen kan op verschillende manieren gebeuren. Oefenprogramma s zijn te vinden op de Timloto site ( maar kunnen ook worden opgevraagd bij de auteur. Mail naar: e.gernaat@timloto.org In dit hoofdstuk behandelen we vier programma s. Te weten: 1. Potmeter-data verzenden en ontvangen zendpotmeter1 ontvangst potmeter1 2. Maskeren en filteren set mask filter zend set mask filter ontvangst 2 Inleiding CAN-communicatie Bij moderne auto s maken vrijwel alle computers gebruik van de CAN-bus om gegevens met elkaar uit te wisselen. De CAN-bus staat bekend om zijn grote mate van betrouwbaarheid. De betrouwbaarheid heeft niet alleen betrekking op het elektrische signaal maar ook op de inhoud van de eigenlijke CANboodschap. Op de auto is de diagnose-connector via pin 6 en 14 verbonden 1

2 met de CAN-bus in het voertuig. De Arduino controller heeft de mogelijkheden om CAN-boodschappen te ontvangen en te verzenden met behulp van een aparte CAN-interface. 2.1 Globale werking CAN-controller Arduino spreekt over een shield wanneer we een interface-print rechtstreeks op de pinnen van de Arduino kunnen drukken. De Arduino CAN-Shield is gebaseerd op de MCP2515 CAN-controller en een MCP2551 level-shifter (een levelshifter IC zet de TTL-spanning van 0-5V om in de CAN-spanning). De print bevat behalve een twee-draads CAN-uitgang ook een 9-polige DB9 connector als CAN-aansluiting. De communicatie tussen de Arduino en de MCP2515 op de CAN-print verloopt via het seriële SPI-protocol. De CAN-shield van fig. 1 heeft een klok-kristal van 16 MHz. De aansluiting van de 9-pins DB9 connector is als volgt: 1. GND 2. GND 3. CAN-H 5. CAN-L 9. V-OBD (Vin) Figuur 1: De CAN-shield kan op de pinnen van de Arduino worden gedrukt en bestaat uit een MCP2515 CAN-controller en een MCP2551 level-shifter. De CAN-controller is voorzien van een 16 MHz klok. Behalve een Arduino CAN-shield is er ook een CAN-moduul op de markt. Deze moduul dient met losse draadjes aan de Arduino te worden verbonden. Beide 2

3 systemen hebben hun voor- en nadelen. In fig. 2 is een dergelijke moduul afgebeeld. De moduul maakt gebruik van dezelfde CAN-controller (U2) maar een ander merk level-shifter nl. een TJA1050 (U1). Dit maakt echter geen verschil. De aansluitingen van de moduul op de Arduino Uno zijn als volgt: INT aan Arduino pin 2 (Interrupt); SCK aan Arduino pin 13 (Serial Clock); SI aan Arduino pin 11 (MOSI, I(C)SP); SO aan Arduino pin 12 (MISO, I(C)SP); CS aan Arduino pin 10 (soms 9) (Chip Select); GND aan Arduino GND; VCC aan Arduino +5V. Figuur 2: Deze CAN-moduul maakt gebruik van losse draad verbindingen en wordt aangestuurd door een 8 MHz klok. Om de CAN-modulen te programmeren maken we gebruik van een CAN-library. De functies in de library maken het eenvoudiger om de CAN-controller te programmeren. Een 16 MHz klok op de CAN-controller is te prefereren omdat dan de baudrate van de CAN-controller in overeenstemming is met de baudrates van de library. Globaal verloopt de data-overdracht voor het zenden als volgt. De programmeur programmeert de Arduino met: de baudrate van de CAN-bus; de identifier van de CAN-boodschap; de data behorend bij de identifier. Deze data wordt via het SPI-protocol seriëel naar de CAN-controller op de print gestuurd. De CAN-controller stelt de baudrate van de CAN-bus in en voegt allerlei controle bytes toe aan de CAN-boodschap. Vervolgens stuurt de CANcontroller de complete CAN-boodschap naar de level-shifter. Het level-shifter 3

4 IC zet het seriële één-draads TTL-signaal om in het typische tweedraads CAN spanningsverschil signaal. ARDUINO UNO GND GND CAN Controller MCP /10 +5 V GND INT SCK MOSI MISO CS RST VDD RxCAN TxCAN Level shifter TJA 1050 RxD 4 VCC 6 GND 7 1 TxD CAN l CAN h Figuur 3: De Arduino-controller zendt de CAN-boodschap seriëel door naar de CANcontroller. Vervolgens zet het level-shifter IC het CAN-TTL signaal om in het tweedraad CANspanningsverschil niveau. 2.2 De CAN-boodschap De CAN-boodschap bestaat uit een identifier en de eigenlijke data. De CANcontroller voegt hieraan een groot aantal controle bytes toe waarvan de CRC de belangrijkste is. Een identifier zegt iets over de informatie die volgt. Men data frame bytes aantal bits begin frame einde frame bevestiging (ACK) CRC (fout detectie) data (boodschap) controle identifier Figuur 4: De opbouw van een CAN-boodschap. De programmeur bepaalt de baudrate, de identifier en de data, De controle bytes worden door de CAN-controller berekend en toegevoegd. spreekt van een standaard CAN-frame wanneer de identifier 11 bits groot is. Bij een 29 bits grote identifier spreekt men van extended CAN. 2.3 De CAN-bedrading De CAN-bus zelf bestaat uit twee -meestal in elkaar gevlochten draden- die aan beide zijden wordt afgesloten door een weerstand van 120 Ω. De op de CAN-bus aangesloten computers lezen de verschilspanning tussen de CAN-h en CAN-l uit. Op deze wijze worden elektrische storingen van buitenaf voorkomen. Zie fig. 5 Een spanningmeting op de CAN-bus kan met een oscilloscoop plaats vinden door te meten tussen: 4

5 Figuur 5: Voorbeeld van een CAN-auto-netwerk. Ook de diagnose-connector is hierop aangesloten. De draden zijn in elkaar gevlochten. De communicatie-snelheid bedraagt meestal 500 kbits/sec CAN-l en CAN-h CAN-l en de massa CAN-h en de massa Figuur 6: Spanning gemeten tussen CAN-h en CAN-l. Op deze wijze worden ook door de controllers de spanning gemeten. De ontvangende CAN-controller meet het spanningsverschil tussen de CAN-h en CAN-l draad. Deze verschilspanning wordt in de level-shifter weer omgezet in een TTL-signaal. De CAN-controller haalt alle controle bytes er weer uit en geeft de CAN-boodschap door aan de Arduino-controller. De ontvangende controller leest dan de identifier en de data uit. Wanneer we de CAN-bus spanningen meten t.o.v. de massa of GND dan kunnen we zien dat de CAN-bus 5

6 spanning 2,5 V bedraagt als er geen boodschap wordt verzonden. Een logische 1 ontstaat door de CAN-h lijn omhoog te trekken en de CAN-l lijn naar beneden. Het spanningsverschil wordt gemeten. Vanuit het oscilloscoopbeeld kan Figuur 7: De CAN-spanningen gemeten ten opzichte van de massa. Een CAN-bus in rust (zonder signaal) meet 2,5 V t.o.v. de massa. Is er sprake van een signaal dan trekt CAN-h de spanning omhoog t.o.v de 2,5 V en CAN-l omlaag t.o.v de 2,5 V. ook de communicatiesnelheid worden vastgesteld. We meten hiervoor de tijd van de kleinste bit. De baudrate laat zich dan berekenen door de formule: baudrate (bits/sec) = 1000 ms/bittijd in ms. Bij dit hoofdstuk behoren een aantal programma s. We onderscheiden hierin: programma s die zenden; programma s die ontvangen; programma s die ontvangen, maskeren en filteren; Bij het ontvangen wordt onderscheid gemaakt tussen de pol- en de interruptmethode. Bij het pollen wordt er net zo lang gewacht totdat de boodschap binnen is en bij een interrupt springt, wanneer de CAN-boodschap binnen is, het programma naar een apart stukje programmatuur (een interrupt service routine of ISR) dat dan de boodschap ophaalt. Het nu volgende Arduino-programma leest een potentiometer uit en zet de potmeter-stand op de CAN-bus. We zijn uitgegaan van de kennis zoals die in de eerdere hoofdstukken is opgedaan. 3 CAN-programmatuur 3.1 Programma: Zend data potentiometer Programma naam: zend potmeter1.ino De Arduino CAN-BUS Shield wordt gebruikt. Een 10k potmeter is aangesloten op A0 (de loper), + 5V en de GND. De potmeter-stand wordt via de CAN-bus naar buitengebracht. Het CAN-bericht wordt tevens op de console weergegeven. De identifier is willekeurig. Voor de potmeter-data (0 tot 255) wordt 1 data-byte gebruikt. Een 120 Ω weerstand is gemonteerd tussen CAN-h en CAN-l. 1. # include <mcp can.h> //CAN-library 6

7 2. # include <SPI.h> //SPI-library 3. # define sensorpin A0 4. # define SPI CS PIN MCP CAN CAN(SPI CS PIN); //library aktief, Chip Select: pin unsigned int sensorvalue = 0; 7. unsigned int cantxvalue = 0; 8. unsigned int canid = 0; 9. byte canmsg[8]=0xff,0x02,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f; //bytes in array willekeurig 10. void setup() 11. { 12. Serial.begin(9600); //om boodschap naar console te sturen 13. CAN.begin(CAN 100KBPS); // 100 kb/s bij 16 MHz kristal 14. } 15. void loop() 16. { 17. sensorvalue=analogread(sensorpin); 18. cantxvalue = sensorvalue / 4; //om van 1024 naar 256 te gaan 19. cantxvalue=(byte)cantxvalue; //van integer naar byte 20. canmsg[0]=cantxvalue; // zend data: identifier = 0x07B, standaard frame = 0, data lengte = 8, canmsg=data buffer 21. CAN.sendMsgBuf (0x0FB,0,8,canMsg); //uitlezing naar console 22. canid = CAN.getCanId(); //lees eigen ID uit 23. Serial.print(canId,HEX); 24. Serial.print( \t ); //geef tapafstand 25. Serial.print(canMsg[0]); //lees buffer uit 26. Serial.print( \t ); 27. Serial.print(canMsg[1]); 28. Serial.print( \t ); 29. Serial.print(canMsg[2]); 30. Serial.print ( \t ); 31. Serial.print(canMsg[3]); 32. Serial.print( \t ); 33. Serial.print(canMsg[4]); 34. Serial.print( \t ); 35. Serial.print(canMsg[5]); 36. Serial.print ( \t ); 7

8 37. Serial.print(canMsg[6],HEX); 38. Serial.print( \t ); 39. Serial.print(canMsg[7],HEX); 40. Serial.println( \t ); 41. } Vragen en opgaven (zie ook toelichting) 1. Upload het programma en controleer de werking met behulp van de seriële monitor. 2. Verander nu de uitlezing van de potmeter in een hexadecimale waarde. 3. Zet nu de potmeter-uitlezing op databyte 7 (de laatste) en controleer dit met de seriële monitor. 4. Controleer het spanningsniveau van het signaal met behulp van een oscilloscoop. Meet tussen CAN-h en CAN-l, CAN-h en de GND en CAN-l en de GND. 5. Controleer met de oscilloscoop of enige verandering in het beeld te zien is wanneer we aan de potmeter draaien. 6. Stel m.b.v. de oscilloscoop de baudrate van het signaal vast. 7. Monteer nu een tweede potmeter en geef de stand weer op de eerste data byte en schrijf het programma weg onder de naam zend potmeter1b Toelichting In regel 1 en 2 zien we dat er gebruik wordt gemaakt van twee bibliotheken (library s), een CAN- en een SPI-library. Door het toevoegen van bibliotheken kunnen speciale programmeer-opdrachten worden aangeroepen die buiten de standaard C-instructies vallen. De meeste van deze speciale bibliotheken moeten aan de Arduino IDE worden toegevoegd. Een aantal library s echter zitten al standaard in de IDE. De CAN-library met de naam CAN BUS Shield-master kan van internet worden gdownload en moet dan aan de Arduino IDE worden toegevoegd. De.ZIP file kan via Schets, bibliotheek gebruik en.zip bibliotheek toevoegen geactiveerd worden. In regel 3 wordt aangegeven op welke pin de potmeter wordt aangesloten. In regel 4 wordt vermeld op welke Arduino-pin de CS (Chip Select) van de CAN-controller wordt aangesloten. In regel 5 wordt een instance van de library aangemaakt met de naam CAN en wordt het pinnummer van de CS-pin doorgegeven. Met een logische nul vanuit de Arduino op de CS-pin 10 wordt de CAN-controller geactiveerd. In regel 6,7 en 8 worden de variabelen gedeclareerd. In regel 9 wordt de CAN-boodschap-array gedefiniëerd en gevuld met willekeurige hexadecimale waarden. Deze buffer is 8 bytes groot, van het type byte en heeft de naam canmsg meegekregen. In regel 12 van de setup wordt de baudrate ingesteld om met de console (het scherm) te kunnen 8

9 communiceren. In regel 13 wordt de CAN-communicatie geactiveerd en wordt de baudrate van de CAN-bus op 100 kb/s ingesteld. De nu volgende baudrates worden door de library ondersteund. #define CAN 5KBPS 1 #define CAN 10KBPS 2 #define CAN 20KBPS 3 #define CAN 25KBPS 4 #define CAN 31K25BPS 5 #define CAN 33KBPS 6 #define CAN 40KBPS 7 #define CAN 50KBPS 8 #define CAN 80KBPS 9 #define CAN 83K3BPS 10 #define CAN 95KBPS 11 #define CAN 100KBPS 12 #define CAN 125KBPS 13 #define CAN 200KBPS 14 #define CAN 250KBPS 15 #define CAN 500KBPS 16 #define CAN 666KBPS 17 #define CAN 1000KBPS 18 Voor de auto is de CAN 500KBPS het meest voorkomend. De genoemde baudrates gelden voor een kloksnelheid van 16 MHz van de CAN-controller. Vanuit de 10 bits ADC leest regel 17 de potmeter uit en door de uitlezing door vier te delen verandert de potmeter uitlezing in waarden tussen de 0 en 255 (Regel 18). De 10 bits vanuit de ADC hebben we teruggebracht tot 8 bits (1024/4). De variabele CanxValue was aanvankelijk van het type unsigned integer en we maken in regel 19 hier een variabele van het type byte van. Dan past hij in de array. In regel 20 vullen we de de eerste geheugenplaats van de array (plaats 0) met de stand van de potmeter. In regel 21 verzenden we de gehele CANboodschap in één keer met de programmaregel CAN.sendMsgBuf(). Binnen de haakjes staat de identifier 0x0FB (hexadecimaal), gevolgd door een 0 om aan te geven dat het hier om een standaard CAN-boodschap gaat en gevolgd door een 8 om aan te geven dat de data-buffer 8 bytes groot is. Met canmsg wordt vervolgens de gehele buffer verzonden. In regel 22 halen we onze identifier op en sturen deze naar de console gevolgd door de data die in de array (buffer) is opgeslagen. De inhoud van elke geheugenplaats van de array kan individueel worden opgeroepen door tussen de haakjes het gewenste nummer te zetten. Dit gebeurt in regel 25 t/m 40. De Serial print ( \t ) opdracht geeft een tap tussen de verschillende data bytes. 9

10 3.2 Programma: Ontvangst data potentiometer Het ontvangen van de CAN-boodschap kan op twee manieren gebeuren. Pollen, d.w.z. het programma is voortdurend bezig om te kijken of de boodschap al binnen is, is één methode. De andere methode is op interrupt-basis. Op het moment dat de boodschap binnen is wordt het hoofdprogramma door middel van een interrupt gewaarschuwd dat de boodschap ontvangen is. De CANcontroller maakt dan de interrupt-pin (INT) laag wanneer de CAN-boodschap is ontvangen. De INT-pin van de CAN controller is verbonden met pin 2 van de Arduino. Wanneer pin 2 in de interrupt-mode staat (attachinterrupt) zal iedere keer wanneer de CAN-boodschap ontvangen wordt het programma naar een zgn. Interrupt Service Routine springen. Na het uitvoeren van deze ISR gaat het programma weer verder waar het was gebleven. Het eenvoudigst is de pol-methode en het nu volgende programma maakt hiervan gebruik om de verzonden potmeterstand op de lcd weer te geven. Programma naam: ontvangst potmeter1.ino Arduino Uno met CAN-BUS Shield, potmeter-data wordt ontvangen m.b.v. de polmethode en de CAN-boodschap wordt weergegeven op de lcd. 1. #include <mcp can.h> 2. #include <SPI.h> 3. #include <LiquidCrystal.h> 4. # define SPI CS PIN MCP CAN CAN(SPI CS PIN); // Maak instance CAN van de klas en selecteer CS-pin 6. LiquidCrystal lcd(9, 8, 7, 6, 5, 4);// LCD-klas, LCD-aansluiting voor de CAN-shield 7. byte buf[8]; 8. unsigned int canid; 9. void setup() 10. { 11. lcd.begin(16, 2); //initieer lcd 12. CAN.begin(CAN 100KBPS); // init can bus baudrate = 100k bij 16MHz crystal CAN-controller 13. Serial.begin(9600); // voor weergave console 14. } 15. void loop() 16.{ 17. if(can MSGAVAIL == CAN.checkReceive()) 18. { 19. CAN.readMsgBuf(8, buf); // lees data in buffer-array 20. canid = CAN.getCanId(); // lees identifier uit 21. } 10

11 //ID op de lcd 22. lcd.setcursor(0, 0); 23. lcd.print( ID: ); 24. lcd.setcursor(3, 0); 25. lcd.print(canid,hex); //buffer op lcd 26. lcd.setcursor(7, 0); 27. lcd.print(buf[0],hex); 28. lcd.setcursor(10, 0); 29. lcd.print(buf[1],hex); 30. lcd.setcursor(13, 0); 31. lcd.print(buf[2],hex); 32. lcd.setcursor(0, 1); 33. lcd.print(buf[3],hex); 34. lcd.setcursor(3, 1); 35. lcd.print(buf[4],hex); 36. lcd.setcursor(6, 1); 37. lcd.print(buf[5],hex); 38. lcd.setcursor(9, 1); 39. lcd.print(buf[6],hex); 40. lcd.setcursor(12, 1); 41. lcd.print(buf[7],hex); 42. } Vragen en opgaven 1. Upload het programma, draai aan de potmeter en zie dat de veranderende data op de lcd wordt weergegeven Toelichting In regel 1 t/m 3 wordt aangegeven welke library s worden gebruikt. Aangezien we hier de CAN-boodschap op de lcd willen weergeven wordt ook de Liquid- Crystal library naar binnen gehaald. In regel 4 en 5 wordt een kopie van de CAN-library opgehaald en wordt de library verteld dat pin 10 wordt gebruikt als Chip Select. In regel 6 wordt een kopie van de lcd-library opgehaald en wordt de library verteld welke aansluitpinnen worden gebruikt. Let er op dat deze verschillen met de eerder gebruikte aansluiting. Zie het betreffende hoofdstuk en verder fig. 8. Zo n kopie van de library class wordt een instance genoemd en heeft de naam gekregen van CAN resp. lcd. In regel 7 en 8 worden de variabelen gedeklareerd. Een buffer variabele van 8 geheugen plaatsen elk 1 byte groot. De canid variabele maken we van het type unsigned int en wordt dan 16 11

12 x 2 LCD LCD aansluiting 1= Vss 2 = VDD 3 = V0 4 = RS 5 = RW 6 = E 7 = D0 8 = D1 9 = D2 10= D3 11 = D4 12 = D5 13 = D6 14 = D7 15 = A 16 = K CAN BUS SHIELD GND helderheid k UART GND + CAN BUS Shield I 2 C GND + CAN 5VGND A0 A1 A2 A3 A4 A5 D4 D5 D6 D7 RS E aansluitdraadjes met label Figuur 8: Lcd-aansluiting voor de CAN-BUS Shield. Deze verschilt van de eerdere aansluiting omdat sommige pinnen al door de CAN-shield worden gebruikt. bits groot. Groot genoeg voor de 11-bit grote CAN identifier. Bij extented CAN zullen voor een long unsigned integer moeten kiezen. In de setup() kiezen we de lcd (regel 11) en initiëren de CAN-module en zetten de baudrate op 100 kb/s (regel 12). Als we gebruik willen maken van de weergave op de console dan kunnen we de communicatie met de pc op 9600 bits/s zetten (regel 13). Wordt hier echter niet gebruikt. In de loop bekijken we in regel 17 of de CANboodschap al ontvangen is en zo ja dan slaan we de CAN-data op in de buffer en de identifier in de canid variabele. Regel 19 en 20. Dit voortdurend afvragen of er al een nieuwe boodschap binnen is noemt men dus pollen. Nu rest ons nog de CAN-boodschap op de lcd weer te geven. Dat gebeurt in regel 22 t/m 41. Eerst wordt de positie op de lcd weergegeven met setcursor gevolgd door de weergave van de variabelen op de lcd met lcd.print(). 4 Filteren en maskeren van de CAN-identifier De standaard CAN-boodschap bestaat uit een 11-bit identifier (ID), hexadecimaal van 000h tot 7FFh, gevolgd door maximaal 8 data bytes. We dan laten alle controle-bits buiten beschouwing. Een ontvangende CAN-controller kan de binnenkomende indentifiers onderzoeken om te bepalen of de CAN-boodschap relevant is voor het programma. De controller wacht bijv. op een boodschap met ID 3FFh welke data bevat om bijv. een elektromotor in- of uit te schakelen. 12

13 De CAN-controller bevat hiervoor filter- en maskeerregisters. Niet relevante CAN-boodschappen kunnen worden genegeerd. Het maskeerregister (MASK) wordt gebruikt om te bepalen welke bits van de identifier worden vergeleken met de bits in het filter. Als een bit in het maskeerregister op 0 wordt gezet dan wordt het overeenkomstige ID-bit automatisch geaccepteerd ongeacht de waarde van het filter-bit. Als een maskeerbit op 1 wordt gezet dan wordt de corresponderend ID-bit vergeleken met de waarde van het filter-bit. Wanneer deze gelijk zijn dan wordt de bit gaccepteerd, in het andere geval wordt de boodschap geweigerd. Een paar voorbeelden maken de functie van het maskeer- en filterregister duidelijk. Voorbeeld 1 We willen alleen identifier 567h of b accepteren. Zet dan de filter-bits op 567h of b en zet de maskeerbits op FFFh of b Wanneer nu een CAN-boodschap arriveert worden de bits aangegeven in het maskeerregister (hier dus allemaal) vergeleken met het filter. Als deze bits identiek zijn wordt de boodschap geaccepteerd. Zo niet dan wordt de boodschap genegeerd. Voorbeeld 2 We willen alleen CAN-boodschappen accepteren met een identifier vanaf 560h tot en met 56Fh of b tot b Zet de filter-bits op 560h of b Zet de maskeerbits op FF0h of b Nu worden alleen de eerste 8 bits vergeleken en de laatste 4 zijn altijd correct. Wanneer nu een CAN-boodschap arriveert moeten alle bits behalve de laatste 4 corresponderen. Voorbeeld 3. We willen alleen boodschappen accepteren met een identifier vanaf 560h tot en met 567h of b tot b Zet hiervoor de filter-bits weer op 560h of b Zet de maskeerbits op FF8h of b Wanneer nu een CAN-boodschap arriveert moeten -om de boodschap te accepteren- alle bits behalve de laatste 3 corresponderen. Nu heeft de MCP2515 CAN-controller 2 maskeerregisters en 6 filters. De rangschikking is volgens fig. 9. We willen het allemaal niet te ingewikkeld maken en laten het maskeren buiten beschouwing, d.w.z we zetten alle bits van de maskeerregisters op 1. Het nu volgende programma verzendt een 6-tal identifiers met 8 data bytes. In het bijbehorende ontvangende programma willen we -als voorbeeld- een aantal identifiers door het filteren niet ontvangen. 13

14 Mask RXM1 Filter RXF2 Mask RxM0 Filter RXF3 Filter RXF0 Filter RXF4 Accept Accept Filter RXF1 Filter RXF5 RXB0 identifier data veld MAB identifier data veld RXB1 Receive RxD Figuur 9: Twee maskeerregisters, Mask 0 en 1 voor resp. filter 0 en 1 en filter 2 t/m Programma: Zenden van een te filteren CAN-bericht Program naam: set mask filter zend.ino Deze demo laat het gebruik van maskeren en filteren zien. 6 identifiers met data worden over de CAN-bus verstuurd maar we willen ze niet allemaal ontvangen, We maken een selectie. Zie programma mask filter ontvangst. 1 #include <mcp can.h> 2. #include <SPI.h> 3. #define SPI CS PIN MCP CAN CAN(SPI CS PIN); // Set CS pin op pin byte buffera [8] = {1,2,0xA, 3, 4, 5, 6, 0x8}; 6. byte bufferb [8] = {1,2,0xB, 3, 4, 5, 6, 0x8}; 7. byte bufferc [8] = {1,2,0xC, 3, 4, 5, 6, 0x8}; 8. byte bufferd [8] = {1,2,0xD, 3, 4, 5, 6, 0x8}; 9. byte buffere [8] = {1,2,0xE, 3, 4, 5, 6, 0x8}; 10. byte bufferf [8] = {1,2,0xF, 3, 4, 5, 6, 0x8}; 11. unsigned int IDA =0x77; 14

15 12. unsigned int IDB =0x0B; 13. unsigned int IDC =0xA7; 14. unsigned int IDD =0x55; 15. unsigned int IDE =0x02; 16. unsigned int IDF =0xFF; 17. void setup() 18. { 19. Serial.begin(9600); 20. CAN.begin(CAN 100KBPS); 21. } 22. void loop() //weergave op console 23. { 24. CAN.sendMsgBuf(IDA, 0, 8, buffera); 25. Serial.print (IDA,HEX); 26. Serial.print ( \t ); 27. for (int i=0; i<8; i++) 28. { 29. Serial.print(bufferA[i],HEX); 30. Serial.print( \t ); 31. } 32. Serial.println(); 33. delay (500); 34. CAN.sendMsgBuf(IDB, 0, 8, bufferb); 35. Serial.print (IDB,HEX); 36. Serial.print ( \t ); 37. for (int i=0; i<8; i++) 38. { 39. Serial.print(bufferB[i],HEX); 40. Serial.print( \t ); 41. } 42. Serial.println(); 43. delay (500); 44. CAN.sendMsgBuf(IDC, 0, 8, bufferc); 45. Serial.print (IDC,HEX); 46. Serial.print ( \t ); 47. for (int i=0; i<8; i++) 48. { 15

16 49. Serial.print(bufferC[i],HEX); 50. Serial.print( \t ); 51. } 52. Serial.println(); 53. delay (500); 54. CAN.sendMsgBuf(IDD, 0, 8, bufferd); 55. Serial.print (IDD,HEX); 56. Serial.print ( \t ); 57. for (int i=0; i<8; i++) 58. { 59. Serial.print(bufferD[i],HEX); 60. Serial.print( \t ); 61. } 62. Serial.println(); 63. delay (500); 64. CAN.sendMsgBuf(IDE, 0, 8, buffere); 65. Serial.print (IDE,HEX); 66. Serial.print ( \t ); 67. for (int i=0; i<8; i++) 68. { 69. Serial.print(bufferE[i],HEX); 70. Serial.print( \t ); 71. } 72. Serial.println(); 73. delay (500); 74. CAN.sendMsgBuf(IDF, 0, 8, bufferf); 75. Serial.print (IDF,HEX); 76. Serial.print ( \t ); 77. for (int i=0; i<8; i++) 78. { 79. Serial.print(bufferF[i],HEX); 80. Serial.print( \t ); 81. } 82. Serial.println(); 83. delay (500); 84. } 16

17 Vragen en opgaven 1. Bekijk via hulpmiddelen en seriële plotter of de CAN-boodschappen op de console verschijnen Toelichting Er worden in dit programma 6 CAN-boodschappen verzonden. In de eerste twee regels worden weer de CAN en de SPI library opgeroepen. In regel 4 wordt een instance (kopie) van de library-klas gemaakt waarbij wordt aangegeven dat de Chip Select op pin 10 is aangesloten. In regel 5 t/m 10 worden de boodschapbuffers geïnitialiseerd en gevuld met min of meer willekeurige waarden. 6 identifiers krijgen een variabele naam IDA t/m IDF en worden gevuld met een willekeurig ID-mummer. Regel 11 t/m 16. In de setup wordt de baudrate voor de console alsmede de baudrate voor de CAN-controller vastgelegd. Regel 19 en 20. In de loop worden de 6 verschillende identifiers met de bijbehorende data verzonden en weergegeven op de console. De inhoud van elke buffer wordt met behulp van een for lus op de console weergegeven. Met Serial.print ( \t ) wordt de inhoud van de buffer met tab-afstanden weergegeven. Regel 24 t/m 83. Het nu volgende programma ontvangt de verschillende CAN-boodschappen en biedt de mogelijkheid om naar keuze identifiers te filteren. Bijzonder is dat we in het programma de maskers en filters moeten behandelen alsof we met extended CAN werken. 4.2 Programma: ontvangen met behulp van maskeren en filteren Programma naam: set mask filter ontvangst.ino Hoewel we hier het standaard frame gebruiken, moeten de maskers en filters als 29 bits (extended) worden behandeld. Dit heeft te maken met het aantal registers dat gevuld moet worden. Plaatsen we een 1 als tweede byte dan wordt er gefilterd. 1. #include <mcp can.h> 2. #include < SPI.h > 3. #include < LiquidCrystal.h> 4. long unsigned int Id; 5. byte buf[8]; 6. MCP CAN CAN(10); // CS pin wordt LiquidCrystal lcd(9, 8, 7, 6, 5, 4);// aangepaste pinbezetting 8. void setup() 9. { 17

18 10. lcd.begin(20, 2); 11. CAN.begin(CAN 100KBPS); // init CAN bus: baudrate = 100kb/s // set mask, vergelijk alle 29 bits 12. CAN.init Mask(0,0, 0x1FFFFFFF); // Er zijn 2 mask-registers in de mcp2515 (0 en 1, beiden moeten met 1-nen worden gevuld) 13. CAN.init Mask(1,0, 0x1FFFFFFF); // 7FF = 11 bits identifier en 1FFF FFFF 29 bits identifier // set filter, 2e byte; 0 filter voor standaard frame laat dan door. //0 = standard; 1 = extended frame laat niet door 14. CAN.init Filt(0, 1, 0x );// 0x77 2 filters voor mask CAN.init Filt(1, 0, 0x );// 0x CAN.init Filt(2, 0, 0x000000A7);// 0xA7 4 filters voor mask CAN.init Filt(3, 1, 0x );// 0x CAN.init Filt(4, 1, 0x B);// 0x0B 19. CAN.init Filt(5, 0, 0x000000FF);// 0xFF 20. } 21. void loop() 22.{ // controleer of boodschap wordt ontvangen 23. if(can MSGAVAIL == CAN.checkReceive()) 24. { 25. CAN.readMsgBuf(8, buf); // lees data in buffer-array 26. Id= CAN.getCanId(); // lees identifier uit op lcd 27. lcd.setcursor(0, 0); 28. lcd.print ( ); // wis oude tekst 29. lcd.setcursor(0, 0); 30. lcd.print(id, HEX); 31. for(int i = 0; i< 16; i=i+2) // print de data 32. { 33. lcd.setcursor(i,1); 34. lcd.print(buf[i], HEX); 35. } 36. delay (50); 37 } 38 } 18

19 4.2.1 Vragen en opgaven 1. Verander het programma zodanig dat alleen de Identifiers 0x02, 0x0B en A7 worden doorgelaten Toelichting In regel 1 t/m 3 halen we de drie library s weer binnen. Aangezien we hier werken met extended identifiers maken we de variabele van het type long unsigned int en uiteraard hebben we weer een buffer variabele. Regel 5. In regel 6 maken we een instance (kopie) van de CAN-library en laten de class weten dat de Chip Select aan pin 10 zit. De lcd die we gaan gebruiken gebruikt de aangegeven data-pinnen in regel 7. In regel 10 geven we aan dat we weer te maken hebben met een 20 x 2 lcd en we zetten in regel 11 de CAN-controller op 100 kbits/sec. In regel 12 en 13 vullen we de twee maskeerregisters met enen. In regel 14 t/m 19 geven we de identifiers aan die we (eventueel) willen filteren. Het eerste bit genummerd van 0 t/m 5 geven de filters weer en het tweede bit geeft aan of de identifier al dan niet gefilterd wordt. In de loop (vanaf regel 21) worden de CAN-boodschappen binnengehaald en weergegeven op de lcd. In regel 28 wordt de oude tekst gewist. Het aantal spaties tussen de aanhalingstekens geeft het aantal te wissen tekens aan. In de for loop (regel 21) zien we dat de variabele i steeds met 2 wordt verhoogd. Dit is gedaan om een teken over te slaan Aanvullend materiaal 1x Arduino Uno 2x Arduino CAN-shield 3x 10k lineaire potmeter 1 x LCD 16 x2 set draadjes, male-male, female-female, female-male (20 cm) 19

De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (8)

De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (8) De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (8) Timloto o.s. / E. Gernaat / ISBN 978-90-79302-06-2 Op dit werk is de Creative Commens Licentie van toepassing. Uitgave: september 2012

Nadere informatie

Workshop Arduino voor beginners deel 2

Workshop Arduino voor beginners deel 2 Workshop Arduino voor beginners deel 2 Voor deze workshop is het van belang dat je deel 1 van de workshop hebt afgerond. In deze workshop zitten meerdere opdrachten die elkaar niet allemaal op hoeven te

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (6)

De Arduino-microcontroller in de motorvoertuigentechniek (6) De Arduino-microcontroller in de motorvoertuigentechniek (6) E. Gernaat (ISBN 978-90-79302-11-6) 1 De Arduino Programmeeromgeving (IDE) 1.1 Inleiding Als we naar de Arduino site gaan kunnen we daar de

Nadere informatie

Tweede workshop Arduino

Tweede workshop Arduino Tweede workshop Arduino In deze workshop zal veel gewerkt worden met voorbeelden die meegeleverd worden met de Arduino IDE. Deze zijn te vinden onder het menu File >Examples. Oefening 1 - Seriële communicatie

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (4)

De Arduino-microcontroller in de motorvoertuigentechniek (4) De Arduino-microcontroller in de motorvoertuigentechniek () E. Gernaat (ISBN 978-90-7930--6) De Atmel ATmega38/P microcontroller. Uitvoering De ATmega38 is een microprocessor van de Amerikaanse firma ATMEL

Nadere informatie

Opgave Tussentijdse Oefeningen Jaarproject I Reeks 4: Lcd Interface & Files

Opgave Tussentijdse Oefeningen Jaarproject I Reeks 4: Lcd Interface & Files Opgave Tussentijdse Oefeningen Jaarproject I Reeks 4: Lcd Interface & Files 1 Introductie In deze oefening zal je je LCD display leren aansturen. Je controleert deze display door er instructies naar te

Nadere informatie

Oefening 1 - Seriële communicatie via USB

Oefening 1 - Seriële communicatie via USB Werkbladen voor Arduino workshop 2 In deze workshop zal gewerkt worden met de voorbeelden die meegeleverd worden met de Arduino IDE. Deze zijn te vinden onder het menu Bestand->Voorbeelden. Oefening 1

Nadere informatie

Arduino : Morse Voltmeter

Arduino : Morse Voltmeter Arduino : Morse Voltmeter Ooit was ik begonnen met het leren programmeren van een PIC processor in assembler. Maar ja, dat ging niet zo vlot, er kwamen andere dringende zaken en de PIC vloog weer in de

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (7)

De Arduino-microcontroller in de motorvoertuigentechniek (7) De Arduino-microcontroller in de motorvoertuigentechniek (7) E. Gernaat (ISBN 978-90-79302-11-6) 1 Programma s en projecten 1.1 Oefenprogramma s 1.2 Programma 2 De nu volgende programma s zijn oefenprogramma

Nadere informatie

Arduino CURSUS. door Willy - 09-juni-2017

Arduino CURSUS. door Willy - 09-juni-2017 Arduino CURSUS door Willy - w2@skynet.be, 09-juni-2017 OVERZICHT (1) OVERZICHT (2) Historiek Microcontroller (1) Microcontroller (2) Specificaties - Arduino UNO bord Specificaties - ATmega328P chip LET

Nadere informatie

Werkbladen voor Arduino workshop 1

Werkbladen voor Arduino workshop 1 De aansluitingen van de Arduino Uno Werkbladen voor Arduino workshop 1 Arduino Arduino is een open-source ontwikkelbord, waarmee het eenvoudig is om informatica aan fysieke objecten te koppelen. Je kunt

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (2)

De Arduino-microcontroller in de motorvoertuigentechniek (2) De Arduino-microcontroller in de motorvoertuigentechniek (2) E. Gernaat (ISBN 978-90-79302-11-6) 1 Procescomputer 1.1 Microprocessoren algemeen De informatie-verwerking zoals is behandeld, is vrijwel geheel

Nadere informatie

De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (4)

De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (4) De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (4) Timloto o.s. / E. Gernaat / ISBN 978-90-79302-06-2 Op dit werk is de Creative Commens Licentie van toepassing. Uitgave: september 2012

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (8)

De Arduino-microcontroller in de motorvoertuigentechniek (8) De Arduino-microcontroller in de motorvoertuigentechniek (8) E. Gernaat (ISBN 978-90-79302-11-6) 1 Assembly (Assembleertaal) 1.1 Inleiding De Arduino kan ook in assembleertaal (assembly) worden geprogrammeerd.

Nadere informatie

Besturingspaneel v Raam E-systeem functie omschrijving v109

Besturingspaneel v Raam E-systeem functie omschrijving v109 Besturingspaneel v Raam E-systeem functie omschrijving v109 Aantal druktoetsen: 4 stuks met de volgende functies: On/off toets voor in- en uitschakelen, toets 1 laagste vermogen, 2 midden stand, 3 max.

Nadere informatie

In- en uitgangssignalen van microprocessoren

In- en uitgangssignalen van microprocessoren In- en uitgangssignalen van microprocessoren E. Gernaat 1 Overzicht signalen Informatie van en naar een microprocessor kan parallel of seriëel gebeuren. Bij parallel-overdracht zal elke lijn (draad) een

Nadere informatie

AVR-DOPER MINI ASSEMBLAGE HANDLEIDING + LAYOUT. Geschreven door: Tom Vocke

AVR-DOPER MINI ASSEMBLAGE HANDLEIDING + LAYOUT. Geschreven door: Tom Vocke AVR-DOPER MINI ASSEMBLAGE HANDLEIDING + LAYOUT Geschreven door: Tom Vocke Datum: 28-09-2010 Inleiding: Dit document bevat alle hardware informatie betreffende de AVR-Doper mini. Het eerste deel zal zich

Nadere informatie

De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (2)

De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (2) De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (2) Timloto o.s. / E. Gernaat / ISBN 978-90-79302-06-2 Op dit werk is de Creative Commens Licentie van toepassing. Uitgave: september 2012

Nadere informatie

Arduino Workshop 1 Zuid-Limburg

Arduino Workshop 1 Zuid-Limburg Arduino Workshop 1 Zuid-Limburg Leren door doen Mei 2016 - slides voor Arduino workshop 1 v2.5 Zuid-Limburg PA3CZS, PA0FOT, ON4CDU, PE1EAM 1 Workshop 1 Workshop 1 concentreert op kennismaking en eenvoudige

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (3)

De Arduino-microcontroller in de motorvoertuigentechniek (3) De Arduino-microcontroller in de motorvoertuigentechniek (3) E. Gernaat (ISBN 978-90-79302-11-6) 1 In- en uitgangssignalen van microprocessoren 1.1 Overzicht signalen Informatie van en naar een microprocessor

Nadere informatie

2 Algemene opbouw van een computersysteem

2 Algemene opbouw van een computersysteem Procescomputer E. Gernaat 1 Microprocessoren algemeen Informatie-verwerking zoals behandeld is momenteel vrijwel geheel overgenomen door microprocessoren. Wanneer we voortborduren op het idee van combinatorische

Nadere informatie

De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (3)

De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (3) De AT90CAN microprocessor van ATMEL in de motorvoertuigentechniek (3) Timloto o.s. / E. Gernaat / ISBN 978-90-79302-06-2 Op dit werk is de Creative Commens Licentie van toepassing. Uitgave: september 2012

Nadere informatie

RCL Arduino Workshop 1

RCL Arduino Workshop 1 RCL Arduino Workshop 1 Leren door doen april 2015 - slides voor RCL Arduino workshop 1 ON4CDU & ON8VQ Workshop Leren door doen Werken in een groep Beperkte tijd Alleen essentiele vragen stellen Thuis oefenen

Nadere informatie

MAKERKLAS WORKSHOP ARDUINO. Maandag 7 december 2015

MAKERKLAS WORKSHOP ARDUINO. Maandag 7 december 2015 1 MAKERKLAS WORKSHOP ARDUINO Maandag 7 december 2015 2 AAN DE SLAG! ONDERDELEN Je hebt de beschikking over een Arduino Starter Kit met een heleboel onderdelen. We gaan ze in de ze workshop niet allemaal

Nadere informatie

Veiligheid,comfort en communicatie (1)

Veiligheid,comfort en communicatie (1) Veiligheid,comfort en communicatie (1) Timloto o.s / E. Gernaat (ISBN 978-90-808907-2-5) Op dit werk is de Creative Commens Licentie van toepassing. 1 BCM, IPDM en gecombineerde schakelaars IPDM is een

Nadere informatie

INHOUD SPI : SERIAL PERIPHERAL INTERFACE ALGEMEEN. Videolessen Deel 3 DATACOMMUNICATIE SPI

INHOUD SPI : SERIAL PERIPHERAL INTERFACE ALGEMEEN. Videolessen Deel 3 DATACOMMUNICATIE SPI INHOUD SPI : Serial Peripheral Interface... 1 Algemeen... 1 SPI protocol... 2 Klokpolariteit... 3 CASE 1. MAX5385 DAC... 4 CASE 2: FM25640 FRAM Memory... 5 SPI Praktisch... 7 Uitdagingen:... 7 Datacom-fiche...

Nadere informatie

APPINVENTOR is een 100% gratis online tool waarmee je zelf apps kan maken voor Android devices (niet voor Apple).

APPINVENTOR is een 100% gratis online tool waarmee je zelf apps kan maken voor Android devices (niet voor Apple). APPINVENTOR APPINVENTOR is een 100% gratis online tool waarmee je zelf apps kan maken voor Android devices (niet voor Apple). De open politiek van Android maakt dat het ontwikkelen van apps voor Android

Nadere informatie

B3C 70cm converter besturing. v1.0 2010 PE5PVB www.het bar.net pe5pvb@het bar.net

B3C 70cm converter besturing. v1.0 2010 PE5PVB www.het bar.net pe5pvb@het bar.net B3C 70cm converter besturing v1.0 2010 PE5PVB www.het bar.net pe5pvb@het bar.net Deze schakeling en de bijbehorende software mag niet worden gedupliceerd voor commerciële verkoop zonder uitdrukkelijke

Nadere informatie

Les 8 23 april 2019 arrays bool lampenaan[5]; Serial Serial Serial Serial if(!lampenaan[3]) { int index nummer index nummer nul

Les 8 23 april 2019 arrays bool lampenaan[5]; Serial Serial Serial Serial if(!lampenaan[3]) { int index nummer index nummer nul Les 8 23 april 2019 arrays Nogmaals arrays, maar nu met wat meer diepgang. In zijn eenvoudigste vorm een array is een lijst van karakters, getallen, objecten, etc. De datatypen in deze lijst is voor elk

Nadere informatie

led 0 aan Opdracht: 1 Opdracht: 4

led 0 aan Opdracht: 1 Opdracht: 4 Opdracht: 1 Maak een set meetkabels zoals op foto blz.7 is aangegeven, lengte 60cm. Maak een programmeerkabel zoals op de foto van blz.5 is aangegeven. Houd je ook hier exact aan de kabel kleuren en posities

Nadere informatie

Microcontrollers. Bart Kardinaal E204 221490 Verslag microcontrollers 28-11-06. Rev 1.0 Status definitief.

Microcontrollers. Bart Kardinaal E204 221490 Verslag microcontrollers 28-11-06. Rev 1.0 Status definitief. Microcontrollers Bart Kardinaal E204 221490 Verslag microcontrollers 28-11-06 Rev 1.0 Status definitief. Voorword. Dit verslag is geschreven in het kader van de opdracht, als onderdeel van het eerste studiejaar

Nadere informatie

Arduino en APRS EZHE Workshop April 2017, PD1DDK

Arduino en APRS EZHE Workshop April 2017, PD1DDK Arduino en APRS EZHE Workshop April 2017, PD1DDK Wat kunnen we met APRS? 1. Op kaarten aprs stations weergeven en hun gegevens opvragen. 2. Weerstation info opvragen. 3. Berichten uitwisselen met andere

Nadere informatie

Motormanagement simulatie MegaSquirt Hoofdstuk 3

Motormanagement simulatie MegaSquirt Hoofdstuk 3 Motormanagement simulatie MegaSquirt Hoofdstuk 3 ISBN 978-90-79302-12-3 Steele B.V Ep Gernaat 1 MegaSquirt EFI De MegaSquirt is een door Bowling en Grippo vrij programmeerbare motormanagement-computer

Nadere informatie

Seriële bluetooth verbinding ATmega128

Seriële bluetooth verbinding ATmega128 Opdracht2 Bij deze opdracht worden verschillende taken gemaakt. De taken communiceren onderling met elkaar via een message queue of synchroniseren met elkaar via semaforen. A: Maak een taak aan die de

Nadere informatie

- Dé internetsite voor de Automotive Professional

- Dé internetsite voor de Automotive Professional WWW.AMT.NL - Dé internetsite voor de Automotive Professional Datatransport in de moderne auto Bekend met de CAN-bus (1) De CAN-bus is in de moderne auto een bekende verschijning. Het maakt een einde aan

Nadere informatie

Espa 443 Converter. Beschrijving van de Espa 444 naar Espa 443 Converter.

Espa 443 Converter. Beschrijving van de Espa 444 naar Espa 443 Converter. Espa 443 Converter Beschrijving van de Espa 444 naar Espa 443 Converter. www.elexol.nl Beschrijving Espa 444 naar 443 Converter bladzijde 1 Datum: 5 maart 2010 Inhoudsopgave Werking van de Converter 3

Nadere informatie

Naam + Klas: Laptop Nr: Cijfer:

Naam + Klas: Laptop Nr: Cijfer: Naam + Klas: Laptop Nr: Cijfer: Les 1a: 1: Verander de aan - en uit tijden in de sketch en bekijk het resultaat. 2: Je hebt 14 (0 t/m 13) digitale pinnen ter beschikking om je ledje op aan te sluiten.

Nadere informatie

MiniPlex-41 NMEA-0184 multiplexer Handleiding

MiniPlex-41 NMEA-0184 multiplexer Handleiding MiniPlex-41 NMEA-0184 multiplexer Handleiding MiniPlex-41, V1.0 Firmware V1.10 CustomWare, 2002 Inleiding De MiniPlex-41 is een vierkanaals datamultiplexer, waarmee u meerdere NMEA-0183 instrumenten op

Nadere informatie

Locobuffer Handleiding

Locobuffer Handleiding Locobuffer Handleiding HDM09 Disclaimer van Aansprakelijkheid: Het gebruik van alle items die kunnen worden gekocht en alle installatie-instructies die kunnen worden gevonden op deze site is op eigen risico.

Nadere informatie

Arduino Zuid-Limburg Workshop 2

Arduino Zuid-Limburg Workshop 2 1 Arduino Zuid-Limburg Workshop 2 Leren door doen Juni 2016 - slides voor Arduino workshop Zuid-Limburg 2 In deze workshop Minder focus op de programmeertaal zelf Voorbeelden als basis gebruiken Tonen

Nadere informatie

TECHNISCHE UNIVERSITEIT EINDHOVEN FACULTEIT DER TECHNISCHE NATUURKUNDE

TECHNISCHE UNIVERSITEIT EINDHOVEN FACULTEIT DER TECHNISCHE NATUURKUNDE TECHNISCHE UNIVERSITEIT EINDHOVEN FACULTEIT DER TECHNISCHE NATUURKUNDE Tentamen Computers bij fysische experimenten (3BB20) op dinsdag 25 oktober 2005 Het tentamen duurt 90 minuten en wordt gemaakt zonder

Nadere informatie

MegaSquirt motormanagement-simulatie Hoofdstuk: Inleiding

MegaSquirt motormanagement-simulatie Hoofdstuk: Inleiding MegaSquirt motormanagement-simulatie Hoofdstuk: Inleiding E. Gernaat (ISBN 978-90-79302-03-1, uitgave 2017) 1 De MegaSquirt EFI 1.1 Ten geleide De MegaSquirt is een door Bowling en Grippo vrij programmeerbare

Nadere informatie

Constructie van het klokcircuit voor de processor en het spanningsdetectie circuit

Constructie van het klokcircuit voor de processor en het spanningsdetectie circuit Constructie van het klokcircuit voor de processor en het spanningsdetectie circuit Monteer en soldeer C1 {399-4329-ND, 0,1 µf, opdruk 104}. Deze condensator bevindt zich bij pin 20 van de CPU-voet (R1

Nadere informatie

Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368

Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368 Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368 Handleiding bij het gebruik van een microcontroller in het Accelerometerproject (Project II) Er zijn speciaal voor het Accelerometerproject

Nadere informatie

17 Operaties op bits. 17.1 Bitoperatoren en bitexpressies

17 Operaties op bits. 17.1 Bitoperatoren en bitexpressies 17 Operaties op bits In hoofdstuk 1 is gezegd dat C oorspronkelijk bedoeld was als systeemprogrammeertaal om het besturingssysteem UNIX te implementeren. Bij dit soort toepassingen komt het voor dat afzonderlijke

Nadere informatie

ES1 Project 1: Microcontrollers

ES1 Project 1: Microcontrollers ES1 Project 1: Microcontrollers Les 3: Eenvoudige externe hardware & hardware programmeren in C Hardware programmeren in C Inmiddels ben je al aardig op gang gekomen met het programmeren van microcontrollers.

Nadere informatie

WZ FS 2-2-FFSK 12.5kHz. Korte handleiding

WZ FS 2-2-FFSK 12.5kHz. Korte handleiding WZ FS 2-2-FFSK 12.5kHz Korte handleiding Aansluitschema: Configuratie-interface 12 5 1 2 3 4 5 6 7 8 9 Sub-D 9-female stast (RTS) broadcast data clock 3 RTS 4 data in 6 TxC up Radio of voor µc S1 S2 S3

Nadere informatie

Hoofdstuk 7. Computerarchitectuur

Hoofdstuk 7. Computerarchitectuur Hoofdstuk 7 Computerarchitectuur 1 controlebus CPU MEMORY I/O databus adresbus Figuur 71 Schematische opbouw van een computersysteem 8 Figuur 72 Een busverbinding Buslijn Out E A In Out E B In Out E C

Nadere informatie

CAN-tester Met uitgebreide mogelijkheden

CAN-tester Met uitgebreide mogelijkheden Projects CAN-tester Met uitgebreide mogelijkheden Hugo Stiers (België) De hier beschreven schakeling biedt de mogelijkheid om allerlei experimenten en testen met de CAN-bus uit te voeren. Bovendien bestaat

Nadere informatie

MBUS-64 TCP. VF64 over MODBUS / TCP

MBUS-64 TCP. VF64 over MODBUS / TCP MBUS-64 TCP VF64 over MODBUS / TCP Wijzigingen voorbehouden PS/16-05-2006 Inhoudsopgave 1 Inleiding --------------------------------------------------------------------------------------------- 3 2 Protocol

Nadere informatie

Technische specificatie PRIS Dataverzamel Protocol

Technische specificatie PRIS Dataverzamel Protocol Vialis Traffic bv Afdeling Bezoekadres Oudeweg 115 2031 CC Haarlem Correspondentieadres Postbus 665 2003 RR Haarlem Telefoon +31 (0)23 518 91 91 Telefax +31 (0)23 518 91 11 E-mail info@vialis.nl Internet

Nadere informatie

Arduino. HCC Vlaanderen - Mechelen 7 februari 2011. Luc De Cock

Arduino. HCC Vlaanderen - Mechelen 7 februari 2011. Luc De Cock Arduino HCC Vlaanderen - Mechelen 7 februari 2011 Luc De Cock Inhoud Wat is Arduino? Wat hebben we nodig? Arduino IDE Voorbeelden Extra tools Uitbreidingen Wat is Arduino? Open source electronica platform

Nadere informatie

Arduino Cursus, Deel 2 Programmeren. Simon Pauw, ZB45, Amsterdam

Arduino Cursus, Deel 2 Programmeren. Simon Pauw, ZB45, Amsterdam Arduino Cursus, Deel 2 Programmeren Simon Pauw, ZB45, Amsterdam Programmeren Geen zorgen als je niet alles begrijpt. Doel: Het snappen van bestaande code. Meeste kennis ook toepasbaar buiten de Arduino

Nadere informatie

Tinyserir-RC5. Datasheet. Tinyserir-RC5 Page: 1 of 8

Tinyserir-RC5. Datasheet. Tinyserir-RC5 Page: 1 of 8 9600 bps RS-232 interface voor uitlezing van Ontvangen RC5 codes Led aanduiding bij ontvangst van Infrarood pulsen Led aanduiding goede werking Interne firmware Inwendige oscillator Weinig externe componenten

Nadere informatie

S88XPressNetLI v1.0. Installatie- en gebruikershandleiding en naslagwerk KDesign Electronics, PCB ontwerp door RoSoft

S88XPressNetLI v1.0. Installatie- en gebruikershandleiding en naslagwerk KDesign Electronics, PCB ontwerp door RoSoft S88XPressNetLI v1.0 Installatie- en gebruikershandleiding en naslagwerk. 2008 KDesign Electronics, PCB ontwerp door RoSoft 3.3 De S88XpressNetLI verbinden met de ROCO versterker Aangezien de S88XpressNetLI

Nadere informatie

Inhoudsopgave. SNI handleiding. Inhoudsopgave

Inhoudsopgave. SNI handleiding. Inhoudsopgave Inhoudsopgave Inhoudsopgave INHOUDSOPGAVE...1 INLEIDING...2 AANSPRAKELIJKHEID EN GARANTIE...2 ALGEMENE WERKING...3 PRINT AANSLUITINGEN...4 AANSLUITSCHEMA S...6 VIA COMPUTER NETWERK...6 VIA DONGLE...6 BOUTRONIC

Nadere informatie

Weerstation. Weerstation met Arduino C.G.N. van Veen. HiSPARC. 1 Weerstation. 2 Arduino. 2.1 Werking van Arduino

Weerstation. Weerstation met Arduino C.G.N. van Veen. HiSPARC. 1 Weerstation. 2 Arduino. 2.1 Werking van Arduino Weerstation HiSPARC Weerstation met Arduino C.G.N. van Veen 1 Weerstation Inleiding Naast het meten aan kosmische straling met het HiSPARC meetstation kunnen leerlingen het HiSPARC station uitbreiden met

Nadere informatie

Handleiding HCS VB5118

Handleiding HCS VB5118 Handleiding HCS VB5118 Digitale Ingangsmodule met 8 ingangen HCS Building Automation Kompasstraat 7, 2901AM Capelle a/d IJssel Postbus 182, 2900AD Capelle a/d IJssel Tel. +31(0)10 458 00 00 Fax +31(0)10

Nadere informatie

Microcontrollers Week 4 Introductie microcontroller Jesse op den Brouw (met dank aan Ben Kuiper) INLMIC/

Microcontrollers Week 4 Introductie microcontroller Jesse op den Brouw (met dank aan Ben Kuiper) INLMIC/ Microcontrollers Week 4 Introductie microcontroller Jesse op den Brouw (met dank aan Ben Kuiper) INLMIC/2018-2019 Week 3 Lussen Ontdenderen Stack Parameteroverdracht 2 Wachtlussen In een programma willen

Nadere informatie

Technisch ontwerp positiebepaling Smart Blocks

Technisch ontwerp positiebepaling Smart Blocks Technisch ontwerp positiebepaling Smart Blocks Inhoudsopgave 1 Inleiding......3 2 Hardware......4 2.1 Blok....4 Contactpunten......4 Voeding......4 Datapinnen......5 2.2 Basisplaat......5 3 Positiebepaling......6

Nadere informatie

De FOR lus: // terug naar waar je vandaan kwam Serial.begin(115200); // communicatie snelheid met de PC

De FOR lus: // terug naar waar je vandaan kwam Serial.begin(115200); // communicatie snelheid met de PC Verslag les -5-2-4-19 Werkende lussen: for-loop; while-loop; do while- loop. Wanneer iets twee of meerdere keren gedaan moet worden, dan gebruiken we een subroutine, loop, functie. (verschillende woorden

Nadere informatie

FORTH op de 80C535 processor met het ATS535 board.

FORTH op de 80C535 processor met het ATS535 board. FORTH op de 80C535 processor met het ATS535 board. ATS535 Het ATS535 board met 8052- ANS-Forth, is een product van de HCC Forth GG en Atelec Hoorn. Het board met de ingebouwde software is een uitstekend

Nadere informatie

Besturing van de Miniatuurwereld RM-U. Gebruik van de Bootloader

Besturing van de Miniatuurwereld RM-U. Gebruik van de Bootloader Besturing van de Miniatuurwereld RM-U Gebruik van de Bootloader Auteur: Leon J.A. van Perlo Versie: 1.0 Datum: 24 december 2012 Release beheer Deze handleiding is van toepassing op Print o RM-U Rev 00

Nadere informatie

Montagevoorschriften

Montagevoorschriften Montagevoorschriften BCU Mont_BCU1_NL.Doc 1/9 Inhoudsopgave 1. Montage van de onderdelen... 3 2. Aansluitingen van de 8 polige stekker... 3 3. Aansluitingen van de 10 polige stekker... 4 4. Opstarten...

Nadere informatie

Voorblad tentamen ENG

Voorblad tentamen ENG Voorblad tentamen ENG 015-016 Naam student: Studentnr: Klas: Cijfer: Dit voorblad en indien aangegeven overige opgavenbladen, moeten voorzien zijn van naam, studentnummer en klas. Controleer dit tentamen

Nadere informatie

// hier wordt de functie: ZegHallo aangeroepen

// hier wordt de functie: ZegHallo aangeroepen Verslag les 6 9-4-19 Functies Functies (subroutines) maken het programma overzichtelijker en sneller. Twee functies die altijd aanwezig moeten zijn, zijn: setup() en loop(). Altijd met twee haakjes, waar

Nadere informatie

Het koppelen van de Wago aan de AC500-eco via Modbus RTU. A quick start guide. Jaap Ruiten

Het koppelen van de Wago aan de AC500-eco via Modbus RTU. A quick start guide. Jaap Ruiten Het koppelen van de Wago 750-315 aan de AC500-eco via Modbus RTU. A quick start guide Jaap Ruiten Het koppelen van de Wago 750-315 aan een AC500-eco plc. Solar TPS 1 dinsdag 4 februari 2014 Inhoudsopgave

Nadere informatie

Voeler ingang van de ilog recorder. Stop de temperatuurvoeler

Voeler ingang van de ilog recorder. Stop de temperatuurvoeler 1) Standaard interface (EA-INT) Oud model. 2) Universele interface (EA-INT-U) Nieuw model. Beide interfaces hebben een DB9 (9 pins) connector en uw PC heeft een RS232 seriële poort nodig. Escort ilog Dataloggers

Nadere informatie

Automatische spoel installatie voor legionella preventie. NTKC - Bennie ten Haken 27 Mrt - 2016

Automatische spoel installatie voor legionella preventie. NTKC - Bennie ten Haken 27 Mrt - 2016 Automatische spoel installatie voor legionella preventie. NTKC - Bennie ten Haken 27 Mrt - 2016 Automatische spoel installatie voor legionella preventie. Bennie ten Haken, 16- Feb- 2016 Deze installatie

Nadere informatie

PIC Callgever Door PA1RUM

PIC Callgever Door PA1RUM PIC Callgever Door PA1RUM Aanleiding Tijdens de radiokampweek 2008 is deze callgever met veel enthousiasme gebouwd. Niet alleen omdat het een zeer eenvoudig en veelzijdig ontwerp is, maar ook omdat het

Nadere informatie

Het µclab voor Arduino UNO, NANO en Arduino UNO pincompatible

Het µclab voor Arduino UNO, NANO en Arduino UNO pincompatible Het µclab voor Arduino UNO, NANO en Arduino UNO pincompatible processorbordjes. Shieldjes voor Arduino µc boards zijn nodig om praktische elektronische toepassingen met een Arduino te kunnen uitvoeren.

Nadere informatie

Infographic De infographic geeft in grove lijnen het overkoepelend concept weer Your home remotely controlled Zie de infographic hier naast.

Infographic De infographic geeft in grove lijnen het overkoepelend concept weer Your home remotely controlled Zie de infographic hier naast. Situatie Hoe mooi zou het zijn als je alles in je eigen huis onder controle hebt op afstand. Even het rolluik laten zakken als de zon schijnt, de tv uitzetten die je bent vergeten uit te doen en zelfs

Nadere informatie

GEÏNTEGREERDE PROEF. VTI Sint-Laurentius. Pakketweegschaal. Industriële informatie & communicatietechnologie SCHOOLJAAR 2010-2011.

GEÏNTEGREERDE PROEF. VTI Sint-Laurentius. Pakketweegschaal. Industriële informatie & communicatietechnologie SCHOOLJAAR 2010-2011. VTI Sint-Laurentius De school voor Wetenschap, Techniek en Technologie Pr. Thuysbaertlaan 1 9160 Lokeren www.vti-lokeren.be info@vti-lokeren.be GEÏNTEGREERDE PROEF Pakketweegschaal Industriële informatie

Nadere informatie

Programmeren met Arduino-software

Programmeren met Arduino-software Programmeren met Arduino-software De software waarin we programmeren is Arduino IDE. Deze software is te downloaden via www.arduino.cc. De programmeertaal die hier gebruikt wordt, is gebaseerd op C en

Nadere informatie

- Dé internetsite voor de Automotive Professional

- Dé internetsite voor de Automotive Professional WWW.AMT.NL - Dé internetsite voor de Automotive Professional WEKPLAATS Meten aan auto-elektronica Introductie seriële Communiceren met enen en nullen In de zesde aflevering van de mini-cursus Meten aan

Nadere informatie

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie www.arduino.cc Arduino en DDS DDS chips DDS = Direct Digital (frequency) Synthesis Output = sinusvormig signaal Maximum frequentie = ½ klokfrequentie Frequentie bepaald door tuning word Grootste fabrikant:

Nadere informatie

ATtiny13. Versie 01 : augustus Many van Krieken Page 1

ATtiny13. Versie 01 : augustus Many van Krieken Page 1 ATtiny13 Versie 01 : augustus 2012 Many van Krieken Page 1 Proces programmeren ATtiny13 (deel 1) In onderstaande stappen wordt de ATtiny13 geprogrammeerd in de programmeeromgeving voor gebruik in het timerrelais.

Nadere informatie

PROJECT 5: PLANT MONITOR

PROJECT 5: PLANT MONITOR PROJECT 5: PLANT MONITOR IN DIT PROJECT ZAL IK EEN NIEUW TYPE ANALOGE SENSOR INTRODUCEREN DIE DE VOCHTIGHEIDSGRAAD MEET. JE GAAT EEN ALARMSYSTEEM MET LICHT EN GELUID BOUWEN DAT JE VERTELT WANNEER JE PLANT

Nadere informatie

Velbus DIN-rail RS232 & USB interface

Velbus DIN-rail RS232 & USB interface VMBRSUSB Velbus DIN-rail RS232 & USB interface 1 INHOUD Eigenschappen... 3 Velbus... 3 RS232C... 3 USB... 3 Aansluiting... 4 Aansluiting van het velbus...4 Externe seriële aansluiting... 5 Verbinding met

Nadere informatie

Inhoud vandaag. Interrupts. Algemeen ARM7 AIC

Inhoud vandaag. Interrupts. Algemeen ARM7 AIC Inhoud vandaag Interrupts Algemeen ARM7 AIC Interrupts Wat is een interrupt? Een interrupt is een onderbreking van de huidige bezigheden ten gevolge van een externe gebeurtenis, zodanig dat de bezigheden

Nadere informatie

A R D U I N O. addendum bij: Leren programmeren, meten en sturen met de Arduino. 3 e druk INHOUD

A R D U I N O. addendum bij: Leren programmeren, meten en sturen met de Arduino. 3 e druk INHOUD addendum bij: Leren programmeren, meten en sturen met de Arduino 3 e druk A R D INHOUD Errata Aanwijzigen en tips (inclusief errata) Basisset en aanvullingsset U I N O 2 Errata derde druk Pag. 71, afbeelding

Nadere informatie

Sumo-robotcompetitie. Uitlegsessie 15 maart 2011

Sumo-robotcompetitie. Uitlegsessie 15 maart 2011 Sumo-robotcompetitie Uitlegsessie 15 maart 2011 Opwarmer: waaruit bestaat een sumo-robot? 3 Opwarmer: waaruit bestaat een sumo-robot? Sensoren Verwerking Duw-mechanisme Aandrijving 4 Overzicht Herhaling:

Nadere informatie

Voeler ingang van de ilog recorder. Stop de temperatuurvoeler

Voeler ingang van de ilog recorder. Stop de temperatuurvoeler 1) Standaard interface (EA-INT) Oud model. 2) Universele interface (EA-INT-U) Nieuw model. Beide interfaces hebben een DB9 (9 pins) connector en uw PC heeft een RS232 seriële poort nodig. Escort ilog Dataloggers

Nadere informatie

Deel 8: stappenmotoren en interrupts

Deel 8: stappenmotoren en interrupts Deel 8: stappenmotoren en interrupts Stappenmotor Kan hoek van as instellen zonder een gesloten feedbacksysteem. Het is een simpel en precies open loop systeem. Werkt met discrete stappen, dus schokkerig

Nadere informatie

16F877A development board cursus deel 1

16F877A development board cursus deel 1 16F877A development board cursus deel 1 Auteur: Stijn Coenen (Stynus) [0909-005] Een tijd geleden waren er development boardjes voor de PIC16F877A te koop. Er was toen beloofd eloofd dat er een cursus

Nadere informatie

HD44780 compatibele LCD-displays begrijpen

HD44780 compatibele LCD-displays begrijpen LinuxFocus article number 258 http://linuxfocus.org HD44780 compatibele LCD-displays begrijpen door Jan Svenungson Over de auteur: Jan gebruikt GNU/Linux al sinds 1996 en heeft

Nadere informatie

Goedkope RS232. MSX Computer Magazine nummer 53- april Scanned, ocr ed and converted to PDF by HansO, 2001

Goedkope RS232. MSX Computer Magazine nummer 53- april Scanned, ocr ed and converted to PDF by HansO, 2001 Goedkope RS232 MSX Computer Magazine nummer 53- april 1992 Scanned, ocr ed and converted to PDF by HansO, 2001 Van huis uit zijn is de MSX computer voorzien van diverse aansluitingen, zoals de joystick

Nadere informatie

G. Schottert Handleiding Freekie 1. Nederlandse handleiding. Freekie DMX ADRES INSTELLINGEN 1

G. Schottert Handleiding Freekie 1. Nederlandse handleiding. Freekie DMX ADRES INSTELLINGEN 1 DMX ADRES INSTELLINGEN 1 Freekie Nederlandse handleiding Iedere fixture dat verbonden is met serial link moet voorzien worden van een DMX startadres, welke het eerste kanaal is dat de controller gebruikt

Nadere informatie

Handleiding HCS VB5248

Handleiding HCS VB5248 Handleiding HCS VB5248 Analoge Uitgangsmodule met 8 uitgangen HCS Building Automation Kompasstraat 7a, 2901AM Capelle a/d IJssel Postbus 182, 2900AD Capelle a/d IJssel Tel. +31(0)10 458 00 00 Fax +31(0)10

Nadere informatie

1-poorts RS232 seriële adapter kaart met UART

1-poorts RS232 seriële adapter kaart met UART 1-poorts RS232 seriële adapter kaart met 16950 UART Product ID: PEX1S953LP Met deze RS232 seriële adapterkaart kunt u een RS232 DB9 seriële poort aan uw computer toevoegen, via een PCI Express (PCIe) sleuf.

Nadere informatie

MULTIMEDIABOX.nl Custom made solutions hardware & software. Advanced Menu

MULTIMEDIABOX.nl Custom made solutions hardware & software. Advanced Menu MULTIMEDIABOX.nl Custom made solutions hardware & software Advanced Menu Datum: 07-06-2011 Versie: V0.01 Auteur: Multimediabox.nl RVB Plaats: Eindhoven 1 Waarschuwing: In dit document kunnen instellingen

Nadere informatie

Beknopte informatie voor GBS leverancier t.b.v. NIBE warmtepomp 1145/1245/1155/1255/1345

Beknopte informatie voor GBS leverancier t.b.v. NIBE warmtepomp 1145/1245/1155/1255/1345 Beknopte informatie voor GBS leverancier t.b.v. NIBE warmtepomp 1145/1245/1155/1255/1345 Protocol: Methode: RTU, snelheid: 9600 baud, lengte: 8 bit, parity: geen, stop bits: 1, Adres 0x01*** Scan rate

Nadere informatie

Werkingsspanning: Uitgangsformaten: 1 tot 5 cijfers + fabriekscode, 26 bit Wiegand 30 bit Wiegand Clock en data Werkingstemperatuur: -31 C tot 63 C

Werkingsspanning: Uitgangsformaten: 1 tot 5 cijfers + fabriekscode, 26 bit Wiegand 30 bit Wiegand Clock en data Werkingstemperatuur: -31 C tot 63 C 1. Inleiding De EASYBKW is een vandaalbestendig, programmeerbaar codeklavier met achtergrondverlichting. De Wiegand uitgang zorgt ervoor dat dit klavier op de meeste toegangscontrolesystemen aangesloten

Nadere informatie

THEORIE TALSTELSELS. 1 x 10 0 = 1 (een getal tot de macht 0 = 1) 8 x 10 1 = 80 2 x 10 2 = x 10 3 = Opgeteld: 9281d(ecimaal)

THEORIE TALSTELSELS. 1 x 10 0 = 1 (een getal tot de macht 0 = 1) 8 x 10 1 = 80 2 x 10 2 = x 10 3 = Opgeteld: 9281d(ecimaal) THEORIE TALSTELSELS De binaire code Het geheugenelement van de computer kan slechts twee verschillende waarden bevatten. De schakelingen uit de computer werken daarom met een tweetallig ofwel binair stelsel.

Nadere informatie

INHOUD. dankbetuiging inleiding DE ARDUINO REVOLUTIE...16 OVER DIT BOEK...17 OPZET VAN DIT BOEK...18

INHOUD. dankbetuiging inleiding DE ARDUINO REVOLUTIE...16 OVER DIT BOEK...17 OPZET VAN DIT BOEK...18 INHOUD dankbetuiging... 13 inleiding... 15 DE ARDUINO REVOLUTIE...16 OVER DIT BOEK...17 OPZET VAN DIT BOEK...18 PROJECT 0: AAN DE SLAG...22 HARDWARE... 23 DE ARDUINO UNO... 23 STROOM... 23 BREADBOARDS...

Nadere informatie

Microcontrollers. Robert Langenhuysen, PA0RYL

Microcontrollers. Robert Langenhuysen, PA0RYL Microcontrollers Robert Langenhuysen, PA0RYL 1 RF Seminar B&D 2013 Eisen Niet al te ingewikkeld Kits, geschikt voor experimenteren, rapid prototyping, etc. I/O mogelijkheden HDMI, VGA, SD, analoog, digital,

Nadere informatie

Snel aan de slag met de Mini Squirrel datalogger

Snel aan de slag met de Mini Squirrel datalogger Snel aan de slag met de Mini Squirrel datalogger Datalogger type: MS47 MS47 Mini Squirrel datalogger is een datalogger voor het controleren van het binnenklimaat op de volgende parameters: Relatieve vochtigheid,

Nadere informatie

Bouw je eigen minicomputer

Bouw je eigen minicomputer Soldeer stap-voor-stap de Fabschoolino, een open source Arduino. 1 2 3 Je hebt nodig: soldeerbout, soldeersel, batterijhouder, Fabschoolino board (het PCB, ATMEGA 328P (ic) en de losse componenten + beschrijving

Nadere informatie

Handleiding HCS VB5224

Handleiding HCS VB5224 Handleiding HCS VB5224 Digitale Uitgangsmodule met 4 uitgangen HCS Building Automation Kompasstraat 7, 2901AM Capelle a/d IJssel Postbus 182, 2900AD Capelle a/d IJssel Tel. +31(0)10 458 00 00 Fax +31(0)10

Nadere informatie