Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Machinekit - Machine Control Ready for the Internet of Things

36 vues

Publié le

The open source motion control software Machinekit is read for the internet of things.

This talk explains the early progress made to implement the Machinetalk middleware.

For more information visit https://machinekoder.com/ and http://www.machinekit.io/.

Publié dans : Logiciels
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Machinekit - Machine Control Ready for the Internet of Things

  1. 1. Machinekit MachineControl readyforthe InternetofThings Alexander Rössler, BSc
  2. 2. 2 Overview ● About Me ● Machinekit ● Machinetalk ● Live Demo
  3. 3. 3 AboutMe ● Alexander Rössler ● Embedded Systems ● OpenSource community ● 3D printing ● The Cool Tool
  4. 4. 4 WhatisMachinekit?
  5. 5. 5 Roots May 2014 Machinekit
  6. 6. 6 Roots CNC Machines Desktop Computers
  7. 7. 7 Applications Embedded Devices TabletsSmartphones Desktop ComputersCNC Machines Robots Quadcopters Machinekit 3D Printers Other Applications ?
  8. 8. 8 Machinetalk ● Middleware ● Interaction between RT and non-RT ● Distributed setups
  9. 9. 9 Transport SUBSUB SUB PUB Publish-Subscribe REQ REP ROUTER DEALER REP REP REQREQ Router-Dealer ● ZeroMQ ● End-to-end ● Communication patterns ● Several transports (TCP, IPC, …) ● No startup order dependency ● Automatic reconnect
  10. 10. 10 Serialization Object 0 1 1 0 1 0 0 1 Bytes 0 1 Serialization Transport ● Protocol Buffers ● Wire format ● Binary data ● Highly optimized ● RT: nanopb
  11. 11. 12 ServiceDiscovery ● MDNS/DNS-SD ● Auto configuration ● No user interaction ● Decentralized ● Multicast ● Unicast Client Service Discovery Service Service Discovery Service Service Discovery Service Client
  12. 12. 13 Webtalk ● Bridge ● Protobuf JSON→ ● ZeroMQ websockets→
  13. 13. 14 7404 abcd efgh Hardware AbstractionLayer ● Configuration – Components – Pins – Signals ● Realtime ● Userland
  14. 14. 15 HALRemoteComponent ● Like normal components ● Remote API Real-time hostClient 1 Real-time environment HAL instance Haltalk abcd efgh Client 2 12345
  15. 15. 16 HALGroups ● Grouping signals ● Value updates Real-time host Client Real-time environment HAL instance Haltalk abcd efgh X: 1.23 Y: 2.31 Z: 123.2 ...
  16. 16. 17 HALNamedRingBuffers ● Queued command and response ● RT to non-RT interface Real-time hostClient 1 Client 2 Real-time environment HAL instance Haltalk abcd efgh G0 X1 G1 Y20.1 F20 ...
  17. 17. 18 Showtime!
  18. 18. 19 Demo M A/B Encoder dt du dt UI dp PID command feedback P I D velocity acceleration position non-RT RT
  19. 19. 21 More Information ● machinekit.io ● Machinekit on Google Google Groups
  20. 20. 22 Questions?

×