Es werde Licht mit Arduino Yes, we scan… http://en.wikipedia.org/wiki/Web_of_Things Max Kleiner Script: 510_bonn_gpsdata_mX4.pas
World of Things are changing (Web of Things) 2 • You deal with physics and elements (xyz) • Lots of sensors & actuators to solder • Memory/energy on ucontroller is very small • Which Casing…, ex. 336_digiclock_3.txt • Push a Session or pull a Service ? • Call it Client to Device Ident (CD Host) • Which Use Case ex. App or DigiCam? http://en.wikipedia.org/wiki/Anti-pattern A Short History of Time 1991 Application Program 1995 Application 1998 Applet 2010 App 2015 A (Android, Arduino, ARM)
Some Theory and Practise • Digital World is build on Analogue World • • • •• • 3 070_pas_functionplotter_digital2.txt
How to Start ? • With a Starter Kit you have everything you need to start learning the basics of electronics: an Arduino UNO, an essential set for wiring things up, a lot of sensors and actuators. 4 Ex. 488_AsyncTerminal2.txt Blink (out of the Box)
Need Things RS 232 TSerial, AsyncPro, CPort Oscilloscope Board & LED Editors 5
Proof of Concept Lord of the Things 6
Case Study LED Box Solution 7 Arduino UNO Memory Flash 32,768 bytes non-volatile Stores the program source code and Arduino bootloader SRAM 2048 bytes volatile Operating space for accessing variables and functions EEPROM 1024 bytes non-volatile Permanent storage for user data like readings or settings
Use Case Shine on you crazy… 8 Send a command over http to COM on board to light a RGB led
Solution Arduino C Standard Arduino Library 9 void setup() { // initialize digital pin as an output. pinMode(ledPin11, OUTPUT); Serial.begin(9600); void loop () { val = Serial.read(); //read serial port if (val !=-1){ if (val=='1'){ digitalWrite(ledPin1,HIGH); } else if (val=='A'){ digitalWrite(ledPin1,LOW); } Tutor: http://www.softwareschule.ch/download/maxbox_starter18_3.pdf
Solution HTTP Server 76 with HTTPServer do begin 77 if Active then Free; 78 if not Active then begin 79 bindings.Clear; 80 bindings.Add; 81 bindings.items[0].Port:= APORT; 82 bindings.items[0].IP:= IPADDR; //'127.0.0.1'; {GetHostIP} 83 Active:= true; 84 onCommandGet:= @HTTPServerGet; 85 PrintF('Listening HTTP on %s:%d.', [Bindings[0].IP,Bindings[0].Port]); 86 end; http://www.softwareschule.ch/examples/443_webserver_arduino_rgb_light4.txt 10
Solution COM Port TIdHTTPRequestInfo; respInfo: TIdHTTPResponseInfo); 11 procedure HTTPServerGet(aThr: TIdPeerThread; reqInfo: 54 if uppercase(localcom) = uppercase('/LED') then begin 55 cPort.WriteStr('1') 56 writeln(localcom+ ': LED on'); 57 RespInfo.ContentText:= getHTMLContentString('LED is: ON'); 58 end else 59 if uppercase(localcom) = uppercase('/DEL') then begin 60 cPort.WriteStr('A'); 61 writeln(localcom+ ': LED off'); 62 RespInfo.ContentText:= getHTMLContentString('LED is: OFF') 63 end; 361_heartbeat_wave.txt http://en.wikipedia.org/wiki/Household_appliances
Test the Light http://192.168.1.40:8080/R 12 Ein Spermium enthält 37,5 MB DNA-Daten. Eine Ejakulation entspricht einem Datentransfer von 1500 TB in 3 Sek. Und ihr denkt DSL sei schnell... ;).
Thanks! Links to Rights the source is the code http://www.softwareschule.ch/maxbox.htm http://sourceforge.net/projects/maxbox http://sourceforge.net/apps/mediawiki/maxbox/ http://en.wikipedia.org/wiki/Arduino http://www.softwareschule.ch/download/webofthings2013.pdf Book Patterns konkret http://www.amazon.de/Patterns-konkret-Max-Kleiner/dp/3935042469 maXbox https://github.com/maxkleiner/maXbox3/releases 13
Questions? Code a World hack the earth 14 Yes, we hack… https://github.com/maxkleiner/maXbox3/releases

Arduino delphi 2014_7_bonn

  • 1.
    Es werde Lichtmit Arduino Yes, we scan… http://en.wikipedia.org/wiki/Web_of_Things Max Kleiner Script: 510_bonn_gpsdata_mX4.pas
  • 2.
    World of Things are changing (Web of Things) 2 • You deal with physics and elements (xyz) • Lots of sensors & actuators to solder • Memory/energy on ucontroller is very small • Which Casing…, ex. 336_digiclock_3.txt • Push a Session or pull a Service ? • Call it Client to Device Ident (CD Host) • Which Use Case ex. App or DigiCam? http://en.wikipedia.org/wiki/Anti-pattern A Short History of Time 1991 Application Program 1995 Application 1998 Applet 2010 App 2015 A (Android, Arduino, ARM)
  • 3.
    Some Theory andPractise • Digital World is build on Analogue World • • • •• • 3 070_pas_functionplotter_digital2.txt
  • 4.
    How to Start? • With a Starter Kit you have everything you need to start learning the basics of electronics: an Arduino UNO, an essential set for wiring things up, a lot of sensors and actuators. 4 Ex. 488_AsyncTerminal2.txt Blink (out of the Box)
  • 5.
    Need Things RS232 TSerial, AsyncPro, CPort Oscilloscope Board & LED Editors 5
  • 6.
    Proof of ConceptLord of the Things 6
  • 7.
    Case Study LEDBox Solution 7 Arduino UNO Memory Flash 32,768 bytes non-volatile Stores the program source code and Arduino bootloader SRAM 2048 bytes volatile Operating space for accessing variables and functions EEPROM 1024 bytes non-volatile Permanent storage for user data like readings or settings
  • 8.
    Use Case Shineon you crazy… 8 Send a command over http to COM on board to light a RGB led
  • 9.
    Solution Arduino C Standard Arduino Library 9 void setup() { // initialize digital pin as an output. pinMode(ledPin11, OUTPUT); Serial.begin(9600); void loop () { val = Serial.read(); //read serial port if (val !=-1){ if (val=='1'){ digitalWrite(ledPin1,HIGH); } else if (val=='A'){ digitalWrite(ledPin1,LOW); } Tutor: http://www.softwareschule.ch/download/maxbox_starter18_3.pdf
  • 10.
    Solution HTTP Server 76 with HTTPServer do begin 77 if Active then Free; 78 if not Active then begin 79 bindings.Clear; 80 bindings.Add; 81 bindings.items[0].Port:= APORT; 82 bindings.items[0].IP:= IPADDR; //'127.0.0.1'; {GetHostIP} 83 Active:= true; 84 onCommandGet:= @HTTPServerGet; 85 PrintF('Listening HTTP on %s:%d.', [Bindings[0].IP,Bindings[0].Port]); 86 end; http://www.softwareschule.ch/examples/443_webserver_arduino_rgb_light4.txt 10
  • 11.
    Solution COM Port TIdHTTPRequestInfo; respInfo: TIdHTTPResponseInfo); 11 procedure HTTPServerGet(aThr: TIdPeerThread; reqInfo: 54 if uppercase(localcom) = uppercase('/LED') then begin 55 cPort.WriteStr('1') 56 writeln(localcom+ ': LED on'); 57 RespInfo.ContentText:= getHTMLContentString('LED is: ON'); 58 end else 59 if uppercase(localcom) = uppercase('/DEL') then begin 60 cPort.WriteStr('A'); 61 writeln(localcom+ ': LED off'); 62 RespInfo.ContentText:= getHTMLContentString('LED is: OFF') 63 end; 361_heartbeat_wave.txt http://en.wikipedia.org/wiki/Household_appliances
  • 12.
    Test the Light http://192.168.1.40:8080/R 12 Ein Spermium enthält 37,5 MB DNA-Daten. Eine Ejakulation entspricht einem Datentransfer von 1500 TB in 3 Sek. Und ihr denkt DSL sei schnell... ;).
  • 13.
    Thanks! Links toRights the source is the code http://www.softwareschule.ch/maxbox.htm http://sourceforge.net/projects/maxbox http://sourceforge.net/apps/mediawiki/maxbox/ http://en.wikipedia.org/wiki/Arduino http://www.softwareschule.ch/download/webofthings2013.pdf Book Patterns konkret http://www.amazon.de/Patterns-konkret-Max-Kleiner/dp/3935042469 maXbox https://github.com/maxkleiner/maXbox3/releases 13
  • 14.
    Questions? Code aWorld hack the earth 14 Yes, we hack… https://github.com/maxkleiner/maXbox3/releases