Successfully reported this slideshow.
Oliver Hock
Videa Project Services GmbH
2
videa-services.com
www.videa.services
oliver.hock@videa.services
JUG Hamburg
Kids4IT Hamburg
kids4it.de
@oliver_hockOliv...
3
4
PE
Geschäftsprozesse
Neugier
SpaßPräzision
Know-how
5
Definition
Steuerung
6
Momentaufnahmen
9V Ausgang
Zustände
Abfragen
Motoren Sensoren
7
CubeFinder
GRIPP3R
8
PC/Remote API
Sensor/Motor Port API
leJOS
9
Business
Developers
Admins
Framework
BPMN 2 Process Engine for Java
JAR
Workflows
Java Application
10
11
up
down
12
Main Process
Name Value
Subprocess
Name Value
EL
EL
13
CubeFinder Main
Walk
Search
Walk Right And DownWalk Right And Up
TurnWalk And Scan
Scan
14
x
y
2m
3m
turn
walk
walk up
right
down
scan
scan
15
Robot Access Delegate Layer
EV3 Brick Access Singleton
Service Task Processes
«JavaDelegate»
Data Objects
CubeFinder Fu...
16
Process
public class RotateDelegate implements JavaDelegate {
private FixedValue port;
private JuelExpression angle;
17
@Override
public void execute(DelegateExecution execution)
throws Exception {
String portValue = (String) port.getValue...
18
public class
ProcessTestCubeFinderMain {
@Test
public void startProcess()
throws RemoteException {
repositoryService
.c...
19
Brick.java
20
RotateDelegate.java
21
22
23
FetchSampleDelegate.java
24
25
27
28
Tilted Twister 2.0
Cube Finder
Engine / Designer
Eclipse Mars.1 for Java Developers
GitHub
Eclipse Juno Java Dev
CubeTw...
29
Danke schön
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN
Nächste SlideShare
Wird geladen in …5
×

Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN

637 Aufrufe

Veröffentlicht am

Betriebliche Abläufe gehören zum Geschäftsalltag wie LEGO zur Kindheit. Dennoch mangelt es in vielen Unternehmen an der Transparenz und Wiederverwendbarkeit dieser Abläufe. Mit der Business Process Model and Notation (BPMN) lässt sich dieses Manko beseitigen, und Fachabteilungen und Technik wachsen zusammen. Zusätzlich wird die Geschäftswelt ortsübergreifend visualisiert. Als Ergebnis entstehen Diagramme, die als Dokumentation für das Business dienen und Automatisierungsgrundlage der IT sind.

Im Gegensatz hierzu steht das praktische Lernen mit LEGO Mindstorms. Ein kleiner Roboter wird in mannigfaltigen Ausprägungen zusammengebaut, mit einer Java-API gefüttert und über externe Software gesteuert. Seriell und parallel geschaltete Einzelschritte erwecken unseren beweglichen Freund zum Leben.

In diesem Vortrag wird der Bogen zwischen Prozessen und Robotern gespannt. Bewegungsabläufe werden mit BPMN2 definiert und mittels einer Business Process Engine automatisiert. Es wird die Herangehensweise der Modellierung inklusive BPMN-Basics, Strukturierung von Prozessen sowie Motorik und Sensorik behandelt und während einer Live-Demo veranschaulicht.

Alles in allem ein Thema, das Programmierer und Tüftler, Profis und Unerfahrene sowie Erwachsene und Kinder gleichermaßen zu begeistern vermag.

https://youtu.be/bBJrKY_OBLc

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN

  1. 1. Oliver Hock Videa Project Services GmbH
  2. 2. 2 videa-services.com www.videa.services oliver.hock@videa.services JUG Hamburg Kids4IT Hamburg kids4it.de @oliver_hockOliver_Hock3 olihock / bepemind
  3. 3. 3
  4. 4. 4 PE Geschäftsprozesse Neugier SpaßPräzision Know-how
  5. 5. 5 Definition Steuerung
  6. 6. 6 Momentaufnahmen 9V Ausgang Zustände Abfragen Motoren Sensoren
  7. 7. 7 CubeFinder GRIPP3R
  8. 8. 8 PC/Remote API Sensor/Motor Port API leJOS
  9. 9. 9 Business Developers Admins Framework BPMN 2 Process Engine for Java JAR Workflows Java Application
  10. 10. 10
  11. 11. 11 up down
  12. 12. 12 Main Process Name Value Subprocess Name Value EL EL
  13. 13. 13 CubeFinder Main Walk Search Walk Right And DownWalk Right And Up TurnWalk And Scan Scan
  14. 14. 14 x y 2m 3m turn walk walk up right down scan scan
  15. 15. 15 Robot Access Delegate Layer EV3 Brick Access Singleton Service Task Processes «JavaDelegate» Data Objects CubeFinder Functions RotateDelegate FetchSampleDelegate Brick.getInstance() Very Static Model getRegulatedMotor(p) getSampleProvider(p) Host = “192.168.173.67”
  16. 16. 16 Process public class RotateDelegate implements JavaDelegate { private FixedValue port; private JuelExpression angle;
  17. 17. 17 @Override public void execute(DelegateExecution execution) throws Exception { String portValue = (String) port.getValue(execution); Long angleValue = (Long) angle.getValue(execution); String hostVar = ""+execution.getVariable("Host"); // leJOS API stuff here }
  18. 18. 18 public class ProcessTestCubeFinderMain { @Test public void startProcess() throws RemoteException { repositoryService .createDeployment() .addInputStream( "cubeFinderMain.bpmn20.xml", mainPath)) .addInputStream( "scan.bpmn20.xml", scanPath) .deploy(); }} Run as …
  19. 19. 19 Brick.java
  20. 20. 20 RotateDelegate.java
  21. 21. 21
  22. 22. 22
  23. 23. 23 FetchSampleDelegate.java
  24. 24. 24
  25. 25. 25
  26. 26. 27
  27. 27. 28 Tilted Twister 2.0 Cube Finder Engine / Designer Eclipse Mars.1 for Java Developers GitHub Eclipse Juno Java Dev CubeTwister (Randelshofer) KCube 1.0 by Greg Schmidt Kociemba two-phase solver
  28. 28. 29 Danke schön

×