TURNING ECLIPSE INTO AN ARDUINO
PROGRAMMING PLATFORM FOR KIDS
Mélanie Bats / Obeo
CURIOSITY
Explore, question and learn
DISCOVER BY YOURSELF
Explore to understand cause and effects.
COMPUTERS ARE EVERYWHERE
To understand the world, you need to understand how
computers work
UNDERSTAND ELECTRONICS
Play with sensors and actuators
OPEN HARDWARE
ELECTRONIC FOR KIDS
Open hardware dedicated to kids learning electronics :
littleBits
ARDUINO
ARDUINO KITS
Cheap, easy to find thanks to many different providers :
AdaFruit, DFRobot, SeeedStudio, SnootLab, ...
So man...
UNDERSTAND PROGRAMMING
Many open source software are dedicated to learn
programming to kids : Scratch, TurtleLogo, KidsRub...
TEXT
GRAPHICAL
PROGRAM THE REAL WORLD
ECLIPSE IDE FOR DEVELOPPERS
Complex UI, concepts (perpsectives, project lifecycle...),
languages (Java, C)
TURNING ECLIPSE AN IDE FOR KIDS
Graphical programming & light UI
A SIMPLIFIED UI
No menu, only a toolbar with 4 buttons activated according to
what is possible
DASHBOARD
The process :
1. Define connection between hardware platform and
modules
2. Describe the sketch
3. Upload on the...
HARDWARE
Platform, Modules, Wire
SKETCH
PROTOTYPE BASED ON DFROBOT ARDUBLOCK
KIT
Sensors : ambient light, infrared , sound, push button, rotation
Actuators : LEDs...
HELLO WORLD
Blink a LED!
GRAPHICAL BLOCK-BASED LANGUAGE
Structures : while, repeat, if
Functions : delay
Hardware modules : Status, Level, Sensor
V...
SIRIUS
A tool to quickly define DSL based custom multi-view
workbenches with dedicated representations

Sirius
WHY USING SIRIUS ?
For the tool development phase : Dynamic & iterative (live)
development
For kids : Tooling adapted to t...
ARDUINO DESIGNER DEVELOPMENT
STEP 1 - ARDUINO DSL

DSL describing what are Arduino hardware modules and
sketches
ARDUINO DESIGNER DEVELOPMENT
STEP 2 - ARDUINO DIAGRAM SPECIFICATION
Sirius specification
ARDUINO DESIGNER DEVELOPMENT
STEP 3 - CODE GENERATOR

Generate ino files with Acceleo
itbihns;
n rgtes
vi stp){
od eu(
bih...
ARDUINO DESIGNER DEVELOPMENT
STEP 4 - INTEGRATE ARDUINO COMPILER
arduino.mk
Generate Makefile with Acceleo
make
BADTG
OR_A...
ARDUINO DESIGNER DEVELOPMENT
STEP 5 - INTEGRATE TARGET UPLOADER
avr-gcc, avrdude
make upload
USE SENSOR
A LED + push button
FADE LIGHT
1 LED + programming language
A MORE COMPLEX PROJECT
A pet robot
TIGGER
MANY SENSORS AND ACTUATORS
RECYCLED HIGH TECH COMPOSITE
TOUCH
Push button nose commands a blinking necklace
SEE
Infrared sensor eye commands the servo-motored tail
HEAR
Sound sensor ear commands the bubble machine
MORE "SIRIUS" PRESENTATIONS
Wednesday
14:30 - Changing the Game of Systems Architecture
16:15 - Sirius By Example
17:00 - ...
FIND THE CODE ?
https://github.com/mbats/arduino
THANKS! QUESTIONS?

CLAP YOUR HANDS TO MAKE MORE BUBBLES! AND MAYBE
ASK QUESTIONS...
Prochain SlideShare
Chargement dans…5
×

EclipseCon Europe 2013 - Turning Eclipse into an Arduino programming platform for kids

871 vues

Publié le

<em>"Daddy, daddy, how does a computer work?"</em>
We're used to say that curiosity is a bad habit but it is nonetheless one of the greatest strenghts of kids: they are eager to learn. Learn how a computer works, how one can build an application for a phone or a tablet, how one can create a video game. The best answer is probably to give them the tools to discover by themselves the answer to those questions.
Eclipse is used by hundreds of thousands of adults for programming activies, so why not by kids? How to turn Eclipse into a programming environment for kids?

This talk will present our approach and thoughts to simplify the Eclipse user interface for usage by kids. We will show how we created, thanks to <a>Sirius</a>, an easy-to-use and natural graphical tool to let kids discover programming.

A demonstration will present a prototype of a development environment that allows to program an Arduino using a simple and graphical block-based language.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
871
Sur SlideShare
0
Issues des intégrations
0
Intégrations
18
Actions
Partages
0
Téléchargements
11
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

EclipseCon Europe 2013 - Turning Eclipse into an Arduino programming platform for kids

  1. 1. TURNING ECLIPSE INTO AN ARDUINO PROGRAMMING PLATFORM FOR KIDS Mélanie Bats / Obeo
  2. 2. CURIOSITY Explore, question and learn
  3. 3. DISCOVER BY YOURSELF Explore to understand cause and effects.
  4. 4. COMPUTERS ARE EVERYWHERE To understand the world, you need to understand how computers work
  5. 5. UNDERSTAND ELECTRONICS Play with sensors and actuators
  6. 6. OPEN HARDWARE
  7. 7. ELECTRONIC FOR KIDS Open hardware dedicated to kids learning electronics : littleBits
  8. 8. ARDUINO
  9. 9. ARDUINO KITS Cheap, easy to find thanks to many different providers : AdaFruit, DFRobot, SeeedStudio, SnootLab, ... So many kinds of modules available!
  10. 10. UNDERSTAND PROGRAMMING Many open source software are dedicated to learn programming to kids : Scratch, TurtleLogo, KidsRuby, Python4Kids... Initiatives : Programatoo, Devoxx4Kids, greenlight, coding goûter...
  11. 11. TEXT
  12. 12. GRAPHICAL
  13. 13. PROGRAM THE REAL WORLD
  14. 14. ECLIPSE IDE FOR DEVELOPPERS Complex UI, concepts (perpsectives, project lifecycle...), languages (Java, C)
  15. 15. TURNING ECLIPSE AN IDE FOR KIDS Graphical programming & light UI
  16. 16. A SIMPLIFIED UI No menu, only a toolbar with 4 buttons activated according to what is possible
  17. 17. DASHBOARD The process : 1. Define connection between hardware platform and modules 2. Describe the sketch 3. Upload on the target
  18. 18. HARDWARE Platform, Modules, Wire
  19. 19. SKETCH
  20. 20. PROTOTYPE BASED ON DFROBOT ARDUBLOCK KIT Sensors : ambient light, infrared , sound, push button, rotation Actuators : LEDs, micro servo motors, fan
  21. 21. HELLO WORLD Blink a LED!
  22. 22. GRAPHICAL BLOCK-BASED LANGUAGE Structures : while, repeat, if Functions : delay Hardware modules : Status, Level, Sensor Variables Constants Mathematical operators
  23. 23. SIRIUS A tool to quickly define DSL based custom multi-view workbenches with dedicated representations Sirius
  24. 24. WHY USING SIRIUS ? For the tool development phase : Dynamic & iterative (live) development For kids : Tooling adapted to the development of arduino small projects
  25. 25. ARDUINO DESIGNER DEVELOPMENT STEP 1 - ARDUINO DSL DSL describing what are Arduino hardware modules and sketches
  26. 26. ARDUINO DESIGNER DEVELOPMENT STEP 2 - ARDUINO DIAGRAM SPECIFICATION Sirius specification
  27. 27. ARDUINO DESIGNER DEVELOPMENT STEP 3 - CODE GENERATOR Generate ino files with Acceleo itbihns; n rgtes vi stp){ od eu( bihns=; rgtes0 } vi lo( { od op) wie(bihns<5) hl (rgtes25) { bihns=bihns+) rgtes(rgtes1; aaoWie1,5-bihns); nlgrt(125(rgtes) dly8; ea() } wie(bihns>) hl (rgtes1) { bihns=bihns-) rgtes(rgtes1; aaoWie1,5-bihns); nlgrt(125(rgtes) dly8; ea() } dly20; ea(0) }
  28. 28. ARDUINO DESIGNER DEVELOPMENT STEP 4 - INTEGRATE ARDUINO COMPILER arduino.mk Generate Makefile with Acceleo make BADTG OR_A =uo n ADIOPR =/e/tAM RUN_OT dvtyC0 ADIOLB =Sro RUN_IS ev icue/s/hr/run/run.k nld ursaeadioAdiom
  29. 29. ARDUINO DESIGNER DEVELOPMENT STEP 5 - INTEGRATE TARGET UPLOADER avr-gcc, avrdude make upload
  30. 30. USE SENSOR A LED + push button
  31. 31. FADE LIGHT 1 LED + programming language
  32. 32. A MORE COMPLEX PROJECT A pet robot
  33. 33. TIGGER
  34. 34. MANY SENSORS AND ACTUATORS
  35. 35. RECYCLED HIGH TECH COMPOSITE
  36. 36. TOUCH Push button nose commands a blinking necklace
  37. 37. SEE Infrared sensor eye commands the servo-motored tail
  38. 38. HEAR Sound sensor ear commands the bubble machine
  39. 39. MORE "SIRIUS" PRESENTATIONS Wednesday 14:30 - Changing the Game of Systems Architecture 16:15 - Sirius By Example 17:00 - EcoreTools 2.0: The Making Of 19:00 - BOF "Let's get Sirius" At any time: ask us or visit Obeo booth
  40. 40. FIND THE CODE ? https://github.com/mbats/arduino
  41. 41. THANKS! QUESTIONS? CLAP YOUR HANDS TO MAKE MORE BUBBLES! AND MAYBE ASK QUESTIONS...

×