Preview

Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS)

Advanced search

Visual Dataflow Language for Educational Robots Programming

https://doi.org/10.15514/ISPRAS-2016-28(2)-3

Abstract

Visual domain-specific languages usually have low entry barrier. Sometimes even children can program on such languages by working with visual representations. This is widely used in educational robotics domain, where most commonly used programming environments are visual. The paper describes a novel dataflow visual programming environment for embedded robotic platforms. Obviously, complex dataflow languages are not simple for understanding. The purpose of our tool is to "bridge" between lightweight educational robotic programming tools (commonly these tools provide languages which are based on control flow model) and complex industrial tools (which provide languages based on more complex dataflow execution model). We compare programming environments mostly used by robotics community with our tool. After brief review of behavioural robotic architectures, some thoughts on expressing them in terms of our dataflow language are given. Visual language, which is described here, provides opportunity to mix dataflow and control flow models for robotics programming. We believe that it is important for educational purposes. Program on our language consists of different blocks (visual representation of data transformation processes) and "links" which presents data flow between them. Domain-specific modelling approach was used to develop our language. Also, this paper provides the examples of solving two typical robot control tasks in our language.

About the Authors

G. A. Zimin
St Petersburg State University, Institute of Mathematics and Mechanics
Russian Federation


D. A. Mordvinov
St Petersburg State University, Institute of Mathematics and Mechanics
Russian Federation


References

1. Banyasad, O. (2000). A Visual Programming Environment for Autonomous Robots.

2. Simpson, J., Jacobsen, C. L., & Jadud, M. C. (2006). Mobile robot control.Communicating Process Architectures, 225.

3. Simpson, J., & Jacobsen, C. L. (2008, September). Visual Process-Oriented Programming for Robotics. In CPA (pp. 365-380).

4. Posso, J. C., Sampson, A. T., Simpson, J., & Timmis, J. (2011). Process-Oriented Subsumption Architectures in Swarm Robotic Systems. In CPA (pp. 303-316).

5. Diprose, J. P., MacDonald, B. A., & Hosking, J. G. (2011, September). Ruru: A spatial and interactive visual programming language for novice robot programming. In Visual Languages and Human-Centric Computing (VL/HCC), 2011 IEEE Symposium on (pp. 25-32). IEEE.

6. Johnston, W. M., Hanna, J. R., & Millar, R. J. (2004). Advances in dataflow programming languages. ACM Computing Surveys (CSUR), 36(1), 1-34.

7. A.S. Kuzenkova, A.O. Deripaska, K.S. Taran, A.V. Podkopaev, Y.V. Litvinov, T.A. Bryksin. [Tools for fast development of domain-specific solutions in metaCASE-platform Qreal] St. Petersburg State Polytechnical University Journal, p. 142, 2011 (in Russian).

8. Kuzenkova A., Deripaska A., Bryksin T., Litvinov Y., Polyakov V. QReal DSM platform-An Environment for Creation of Specific Visual IDEs. InENASE (pp. 205-211) 2013.

9. Brooks, R. A. (1986). A robust layered control system for a mobile robot.Robotics and Automation, IEEE Journal of, 2(1), 14-23.

10. Proetzsch, Martin, Tobias Luksch, and Karsten Berns. "The behaviour-based control architecture iB2C for complex robotic systems." KI 2007: Advances in Artificial Intelligence. Springer Berlin Heidelberg, 2007. 494-497.

11. Erwin, B., Cyr, M., & Rogers, C. (2000). Lego engineer and robolab: Teaching engineering with labview from kindergarten to graduate school. International Journal of Engineering Education, 16(3), 181-192.

12. Gomez-de-Gabriel, J. M., Mandow, A., Fernandez-Lozano, J., & García-Cerezo, A. (2011). Using LEGO NXT mobile robots with LabVIEW for undergraduate courses on mechatronics. Education, IEEE Transactions on, 54(1), 41-47.

13. Kuzenkova, A., Deripaska, A., Bryksin, T., Litvinov, Y., & Polyakov, V. (2013). QReal DSM platform-An Environment for Creation of Specific Visual IDEs. InENASE (pp. 205-211)

14. Kim, S. H., & Jeon, J. W. (2007, October). Programming LEGO Mindstorms NXT with visual programming. In Control, Automation and Systems, 2007. ICCAS'07. International Conference on (pp. 2468-2472). IEEE.

15. Connell, Jonathan H. A colony architecture for an artificial creature. No. AI-TR-1151. MASSACHUSETTS INST OF TECH CAMBRIDGE ARTIFICIAL INTELLIGENCE LAB, 1989.

16. Arkin, Ronald C. Motor schema based navigation for a mobile robot: An approach to programming by behavior. Robotics and Automation. Proceedings. 1987 IEEE International Conference on. Vol. 4. IEEE, 1987.

17. Rosenblatt, Julio K. DAMN: A distributed architecture for mobile navigation. Journal of Experimental & Theoretical Artificial Intelligence 9.2-3 (1997): 339-360.

18. Simpson, Jonathan, and Carl G. Ritson. Toward Process Architectures for Behavioural Robotics. CPA. 2009.

19. D.V. Koznov. [Fundamentals of Visual Modeling] Binom. Laboratorija znanij, Internet-universitet informacionnyh tehnologij. 2008 (in Russian).

20. Rohmer, Eric, Surya PN Singh, and Marc Freese. V-REP: A versatile and scalable robot simulation framework. Intelligent Robots and Systems (IROS), 2013 IEEE/RSJ International Conference on. IEEE, 2013.

21. Kirsanov, Alexander, Iakov Kirilenko, and Kirill Melentyev. Robotics reactive programming with F#/Mono. Proceedings of the 10th Central and Eastern European Software Engineering Conference in Russia. ACM, 2014.

22. Quigley, Morgan, et al. ROS: an open-source Robot Operating System. ICRA workshop on open source software. Vol. 3. No. 3.2. 2009.

23. Gerkey, Brian, Richard T. Vaughan, and Andrew Howard. The player/stage project: Tools for multi-robot and distributed sensor systems. Proceedings of the 11th international conference on advanced robotics. Vol. 1. 2003.


Review

For citations:


Zimin G.A., Mordvinov D.A. Visual Dataflow Language for Educational Robots Programming. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2016;28(2):45-62. https://doi.org/10.15514/ISPRAS-2016-28(2)-3



Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)