ÓE-NIK TekiControl

Post on 20-Jan-2016

50 views 0 download

Tags:

description

ÓE-NIK TekiControl. Szabó Zsolt Ügyvivő szakértő (Kari Erasmus koordinátor) szabo.zsolt@nik.uni-obuda.hu http://teki.nik.uni-obuda.hu/ http://teki.knowsitall.info/. AIBO. AIBO ERS210. Several student projects using one hardware element - PowerPoint PPT Presentation

Transcript of ÓE-NIK TekiControl

ÓE-NIKTekiControl

Szabó ZsoltÜgyvivő szakértő(Kari Erasmus koordinátor)

szabo.zsolt@nik.uni-obuda.huhttp://teki.nik.uni-obuda.hu/http://teki.knowsitall.info/

AIBO

23.04.21. szabo.zsolt@nik.uni-obuda.hu 2

AIBO ERS210

• Several student projects using one hardware element

• Two distinct programming interfaces: OPEN-R (C++), RCODE (script language w TCP/IP)

• Object recognition, color normalization, robot soccer, remote control Independent projects, no teamwork

• Problem: Ad-Hoc organization, no common classes / interfaces, no co-operation

• Solution: ROS, TurtleBot2 (bought in dec.2013)23.04.21. szabo.zsolt@nik.uni-obuda.hu 3

TurtleBot 2

23.04.21. szabo.zsolt@nik.uni-obuda.hu 4

Actual state

• What does our robot do?It collects data about the surrounding environment, then discards it and drives into walls.

• What WILL our robot do?It SHALL collect data about the surrounding environment, then it SHALL do whatever we tell it to do.

23.04.21. szabo.zsolt@nik.uni-obuda.hu 5

ROS structure

• ROS is a „robot middleware”• ROS core: manages the basic

communication between the various nodes• Nodes can be any software component, the

basic principle of ROS is to be totally platform- and programming language independent (not fully true)

• E.g. Kobuki, Kinect, CameraX, Kinect_Mic, Stereo_Mic, Speaker, etc etc etc

23.04.21. szabo.zsolt@nik.uni-obuda.hu 6

Using ROS

• Linux-based, usually Ubuntu LTS• We use an Ubuntu Precise (12.04) netbook • ROS Versions: Fuerte, Groovy, Hydro• ROS Windows Never ready, unstable,

untested, highly NOT recommended• ROS Source Not really tested, not

recommended• ROS Debian Not really tested, high

number of package version conflicts• Live DVD or virtual machine: OK23.04.21. szabo.zsolt@nik.uni-obuda.hu 7

Publish & Subscribe

• ROS nodes can communicate using topics and messages

• A node can advertise (create) topics and publish messages into this topic

• Other nodes can subscribe to topics and receive messages from that topic using callbacks

• „Distributed multicast” possible, but the communication is always one-way

• Custom message types are possible, messages are usually passed as references23.04.21. szabo.zsolt@nik.uni-obuda.hu 8

RosBridge

• *UNOFFICIAL* package• A TCP/IP wrapper of ROS• Allows full ROS topic/message management

using HTTP request/response pairs• All communication is done in JSON little

slower (plus: no possibility of pass-by-reference)

• Advantage: *TRUELY* platform and programming language independent ROS nodes are possible

23.04.21. szabo.zsolt@nik.uni-obuda.hu 9

Native Languages

• Default supported: c++ (roscpp), python (rospy), Java (rosjava, in Hydro) People in OE-NIK are usually not professionals in these languages

• Roscs highly beta and extremely no documentation

• Our own extension: TekiControl... A program written in C#, a .NET software layer above ROS to facilitate the integration of student projects

• TekiControl is executed in Ubuntu using Mono

23.04.21. szabo.zsolt@nik.uni-obuda.hu 10

Tek

iCor

e

23.04.21. szabo.zsolt@nik.uni-obuda.hu 11

TekiControl

• Currently: TekiCore + simple remote control of the robot from TCP/IP clients or from a webpage

• Connection with ROS: Native C++ glue + UDP communication (probably extended as a managed ROS node in the future roscs2 )

• Example modules in C# and Managed C++

• Future plan (~3 years): RoboCup, HomeRobotics section

• Student projects + teamwork + devices23.04.21. szabo.zsolt@nik.uni-obuda.hu 12

TekiControl modules• TekiCore C# szabozs• Example modules C# or C++ szabozs• Full Managed ROS ??? (szabozs? )

Other modules should be done by students (either in native ROS or as a TekiModule)

• Managed PCL.NET• ROS vs OAA• ROS Simulation: Gazebo, Turtlesim• ROS documentation review + check ( public

domain!)23.04.21. szabo.zsolt@nik.uni-obuda.hu 13

TekiControl modules• Audio frameworks: speech recognition and

synthesis (JACK, POCKETSPHINX, FESTIVAL)• 3D environment scanning and mapping

(KINECT/FREENECT, PCL, SLAM)• Safe navigation using 0-360 lenses and cameras• Object recognition (OPENCV, MOPED)• Face recognition (OPENCV, AFORGE)• Robotic manipulator arm (in the future)• Safe and target-finder navigation (in the future)

„Teki, bring me my glasses!” …23.04.21. szabo.zsolt@nik.uni-obuda.hu 14

A JÖVŐ… ???

23.04.21. szabo.zsolt@nik.uni-obuda.hu 15

Development model• HIGHLY centralized and supervised• Development at home or in 3.10 / 3.11, questions

in email/gtalk/skype• A GIT repository will be created, one branch per

module, „master” = TekiCore / szabozs• *REGULAR* weekly meetings + reports on

weekly work• Every week: 1. current status 2. current

problems 3. goals for next week 4. goals for next month

23.04.21. szabo.zsolt@nik.uni-obuda.hu 16

Credits• Hungarians: Thesis Work I. + II. for big projects• TDK participation for small projects (*highly*

suggested for big projects as well)

• French students: small projects are advised, custom credits based on personal consultation

• Brazilian students: Project Work I. + II.

23.04.21. szabo.zsolt@nik.uni-obuda.hu 17

Application• DEADLINE: 3/MAR/2014, MIDNIGHT• Application in email:

szabo.zsolt@nik.uni-obuda.hu– CV (must include list of previous projects /

works AND a list of programming skills (languages, platforms, technologies) )

– Project topic– Environment (language, OS, ROS access

method)– Imaginary project timeline

23.04.21. szabo.zsolt@nik.uni-obuda.hu 18

Szabó ZsoltÜgyvivő szakértő(Kari Erasmus koordinátor)

szabo.zsolt@nik.uni-obuda.huhttp://teki.nik.uni-obuda.hu/http://teki.knowsitall.info/

Thank you for your attention!Questions ???