education
play

Education Yinong Chen and Gennaro De Luca School of Computing, - PowerPoint PPT Presentation

VIPLE: Visual IoT/Robotics Programming Language Environment for Computer Science Education Yinong Chen and Gennaro De Luca School of Computing, Informatics, and Decision Systems Engineering Arizona State University Tempe, AZ 85287-8809, U.S.A.


  1. VIPLE: Visual IoT/Robotics Programming Language Environment for Computer Science Education Yinong Chen and Gennaro De Luca School of Computing, Informatics, and Decision Systems Engineering Arizona State University Tempe, AZ 85287-8809, U.S.A.

  2. Overview • Introduction to IoT and RaaS • IoT Standards and Protocols • Definition of VIPLE • Educational examples in VIPLE • VIPLE and IoT devices

  3. History of IoT • Internet of Things • RFID tags and Electronic Product Code (Auto-ID Lab) • IoIT = IoT + computing power • 15 billion IoT devices • 5 billion IoIT devices • 1 billion intelligent systems

  4. Internet-based Computing • Cloud computing – Desktop-based => Internet-based – Physical products => “Things” or services • Cyber Physical Systems (CPS) – Extended/decentralized version of embedded systems • Autonomous Decentralized Systems (ADS) – Loosely coupled/content-oriented systems – Industrial production lines, railway signaling, robotics

  5. Robot as a Service • Composed of services, a service directory, and service clients • IoIT (and IoT) device • IoT-enabled hardware: – Intel Galileo/Edison • CPS • ADS

  6. IoT Standards • Supports many protocols/standards • Connection to physical world – Also supports various standards – ADS uses a content-oriented protocol • DPWS • RaaS Cloud Computing and Big Data Processing Service and Web-Based Computing Technologies Applications Web Data Representations: HTML, JSON, OWL, RDF, XML, etc. Internet Protocols, HTTP, TCP, IP IoT Device Connection Protocols: ADS, DPWS, RaaS, Industry Control Systems, Industry Internet, etc.

  7. IoT/RaaS Programming • Visual programming environments for education – MIT App Inventor – Alice • Robotics programming – MSRDS VPL • Used at ASU, FSE 100 • Discontinued 2014 • Lacks support for new robots

  8. Definition of VIPLE • Based on Microsoft VPL • VIPLE supports similar applications • Additional VIPLE services: – General services (e.g. User I/O, Timers) – Vendor robot services – Generic robot services • Educational tool Microsoft VPL Basic Activities ASU VIPLE Basic Activities

  9. Fundamental Programming in VIPLE

  10. VIPLE Multithreading • Teaching parallel computing – Handles low-level synchronization, thread safety, data passing. – Allows building of multithreaded applications. – Race conditions may still occur. • Hardware is fully utilized – Students can experiment with speedups/optimizations.

  11. Parallel Computing in VIPLE

  12. Event-driven Programming in VIPLE button button pressed pressed door door opening stopped closed opening button pressed limit limit tripped tripped button closing pressed door door stopped closing opened button pressed button pressed

  13. VIPLE’s IoT Interface Definition • Internet Protocol – Multiple supported standards • Data Format – Standardized JSON ASU VIPLE Visual IoT Programming An object pair, with the second element an array of objects IoT / Robot

  14. Connecting VIPLE to Devices

  15. Drive-by-Wire

  16. Maze Navigation with an IoT Device DistanceMeasured rightFinished Start < 400 Turning Turned Forward Right Right RightDistance  DistanceMeasured Resume180 DistanceMeasured Finished Turning >= rightDistance Left leftFinished Resume Turned 180 Left DistanceMeasured < rightDistance

  17. Maze Navigation Implementation Intel Edison-based robot with built-in Wi-Fi and Bluetooth components. A distance sensor is installed in front.

  18. Multithreading and Maze Navigation • Multithreading is a key part of maze navigation. – Many algorithms require concurrent sensor data readings. – Some actions do not need to be waited on. • Many applications are facilitated by multithreading. – New users have more freedom and power in their application development.

  19. Conclusion • New Visual Programming Language: VIPLE – Extends Microsoft VPL – Supports Lego EV3 – Supports all IoT devices based on an open architecture • VIPLE has been pilot tested at ASU and several other universities globally.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend