Performance Evaluation of a MultiThreaded Distributed Telerobotic Framework
Performance Evaluation of a Multi-Threaded Distributed Telerobotic Framework Mayez Al-Mouhamed, Onur Toker, and Asif Iqbal College of Computer Science and Engineering King Fahd University of petroleum and Minerals Dhahran 31261 Kingdom of Saudi Arabia
OUTLINE • Background on telerobotics • A multi-threaded distributed framework • Server module – Distributed framework • Client module – Distributed framework • Performance – Distribution of inter-arrival times of force packets only – Distribution of inter-arrival times of force packets with active video – Distribution of inter-arrival times of force packets during transfer of a video frame – Distribution of inter-arrival times of video packets with active force thread – Thread engineering • Conclusion
Background on Telerobotics • Telerobotics is an approach that extends • • • a human operator’s sensing and manipulating capabilities to a remote environment. Telerobotics has numerous applications in hazardous or hostile environments. The purpose of this work is to design a reliable and efficient man-machine interface between a slave arm (robot) and a master arm over a network which preserves a large degree of operator dexterity. Computer vision and force feed techniques are implemented to enhance the maneuverability of the operator by providing him force feeling.
Background on Telerobotics • To avoid communication delays in • frequently interacting telerobotic systems, the operator will have a library of local automation tasks. Only coarse operator supervision is required. For example, picking up a tool, moving tool to a certain location, returning tool to initial position, etc. Telerobotics is a multidisciplinary area integrating knowledge from robotics, realtime operating systems and programming, network programming, 3 D stereo vision, mechanical linkage engineering, ergonomics, etc.
A Multi-Threaded Distributed Framework • Client-Server distributed component • • telerobotic system. A telrobotic server has components (PUMA, Force Sensor, and Decision Server) and interfaces (Proxy Robot, Force Sensor, and Decision. Server). One or more telerobotic client components An integrated scheme of client-server components A multi-threaded distributed telerobotic system
Server module • PUMA Component • Acts as a software proxy (thread) of the slave robot arm diagram – – – Public methods (Initialize, incremental motion, etc) Public properties (robot states) Public Events (motion commands and communication) • Force Sensor Component (wrist sensor) – Public propertie • Real-time streaming of force data from server to client
Distributed framework at server
Client module • Client GUI (Graphic User Interface) for remote testing and maintenance operations • IDecision. Serverto interface to server through. NET Remoting • All the definitions to execute methods on PUMA and Force. Sensor components • After initialization, the client carries an empty unreferenced copy of IDecision. Server • Following the network connection, the client can reference any instance of Decision. Server
Distributed framework at client
Distribution of inter-arrival times of force packets only
Distribution of inter-arrival times of force packets with active video
Magnified plot of inter-arrival times of force packets under active video
Distribution of inter-arrival times of force packets during transfer of a video frame
Distribution of inter-arrival times of video packets with active force thread
Thread engineering • Break-down independent operations into separate threads • Implement threads to allow maximum thread concurrency – Thread-1: transfer video from camera to buffer-1 – Thread-2: transfer of video over network from Buffer-2 – Pipeline threads 1 and 2 using time overlapping execution
Distribution of inter-arrival times of video packets with active force thread
Conclusion • • An integrated scheme of client-server components A multi-threaded distributed telerobotic system Thread engineering (partitioning, concurrency, and priority) enables optimizing real-time processing – Picture (0. 5 x 2 MB) copy thread takes 24 ms – Video transfer is 86. 5 ms (single buffer) and 56 ms (double buffer) which gives a rate of 17 stereo frames per second – Worst inter-arrival times for reflected force is 9 ms. Implemented system provides reasonable Qo. S for telerobotics operating over a LAN
- Slides: 17