Real Time Control via the Internet - PowerPoint PPT Presentation

1 / 46
About This Presentation
Title:

Real Time Control via the Internet

Description:

Control loops closed over a communications network ... Tach/Gnd -Tach. Input. Current. Monitor. 4A / 1V. Sig. Gnd. Power Gnd. Output. Amp Inhibit ... – PowerPoint PPT presentation

Number of Views:81
Avg rating:3.0/5.0
Slides: 47
Provided by: ben101
Category:

less

Transcript and Presenter's Notes

Title: Real Time Control via the Internet


1
Real Time Control viathe Internet
  • Benjamin Yoo
  • Vladimeros Vladimerou

2
Agenda
  • Overview
  • Speed Control via Internet
  • Experimental Results
  • Future Work

3
Networked Control Systems
  • Control loops closed over a communications
    network
  • Allow sensors and actuators to talk with
    controller over common pipeline

Actuator
Sensor
Plant
Controller
Communication Network (Internet)
Actuator
Sensor
Plant
Controller
4
Why NCS?
  • Decrease cost and complexity
  • Distributed processing by individual units
  • Easier installation and removal
  • Design flexibility
  • Examples
  • Manufacturing systems
  • Vehicles
  • Aircraft
  • Robotics teleoperation

5
Issues in NCS
  • Delay during data transmission
  • time-varying and unpredictable
  • Sampling rates
  • Communication protocols
  • Ethernet, ControlNet, DeviceNet
  • Decreased system performance or instability

6
Previous Work
  • Current work done in the area
  • Nilsson
  • Walsh
  • Branicky
  • Tilbury
  • Remote access of Polytechnic Universitys control
    engineering lab

7
Speed Control of DC motor
  • Objective
  • regulate speed of DC motor
  • Process
  • make measurements
  • compare measurement to desired value
  • calculate and supply appropriate input
  • repeat process

8
What we eventually want
Plant
INTERNET
  • Use Internet Protocol
  • Multiple Plants, Actuators
  • Timing Coordination of Actuators

Control Unit
9
Our implementation
Reference Input
Output (speed read from tachometer)
Motor
Control Unit
tachometer
Delayed feedback
10
Our implementation (continued)
Motor
Output feedback
Reference Input
Somewhere in here is our server!
11
Controller
  • Calculate error using reference and feedback
    signals
  • Determine PI control from error
  • P gain to increase response
  • I gain to eliminate steady state error
  • Send control signal to motor

12
Motor Transfer Function
  • Determines Output from Input
  • Modeled as a first order function

13
Experimental Setup
VB
DC Motor
Server
RTI-815 Interface Board
Internet
Client
14
Hardware Setup
  • Hardware in the Mechatronics Lab
  • RTI-815 interface board
  • Minertia Series DC motor
  • PII-233 MHz computers
  • 10 Mbit Ethernet
  • Networking Lab
  • Grex Cyberspace.org Account

15
Internet Overview
Layers
Examples
16
Internet Overview (continued)
Rectangle indicates area we should be working on
(TCP or UDP)
/ UDP
/ UDP
17
The IP protocol
  • Addressing.
  • 32-bit (128-bit for IPv6) addresses
  • Fragmentation.
  • Reassemble transparently or discard
  • Packet timeouts.
  • TTL (Time To Live)
  • Type of Service.
  • prioritization, IPv6 to support real-time!
  • Options.
  • source routing, record route and security

18
The IP protocol (continued)
The IP header
Each packet must contain complete addressing
information. Also, IP makes no attempt to
determine if packets reach their destination or
to take corrective action if they do not. Nor
does IP checksum the contents of a packet, only
the IP header.
19
The TCP protocol
  • Streams
  • datagram nature concealed, byte streams
  • Reliable delivery
  • correct and in order
  • Network adaptation
  • learns delay, maximizes throughput
  • Flow control
  • end-to-end congestion control, databuffers
    sliding windows

20
The TCP protocol (continued)
The TCP header
Round Trip Time (RTT) estimation and Buffering
help control flow.
21
The UDP protocol
  • Provides IP services as well as
  • Port numbers
  • supports many connections on one host
  • Checksum
  • Detects errors, discards erroneous datagrams
  • TCP too supports Port numbers of course. TCP
    resends bad packets, always in order. UDP does
    not use acknowledgements.

UDP header
22
UDP implementation
  • 1. Perfect Delivery
  • 2. Delay ? jitter
  • - Trade-off between latency and continuity
  • 3. Loss
  • - Forward error correction, retransmission or
    interpolation
  • 4. Out-of-order arrivals
  • - Assume samples are lost or late
  • 5. Duplicate arrivals
  • Simply ignore

23
Timing
  • Time-stamping used for Measuring RTT or one way
    delay time
  • TCP uses ACK numbers and a timer (no time
    indicated in header)
  • Could transmit data time in a packet
  • Our scheme only needs a timer to determine RTT

transmit
DATA
time
DATA
time
Application
Compare, Determine delay
timer
timer
Synchronize hosts (RTT/2 (?),Coordinated
Universal Time WWV, GPS)
24
Sockets
  • Applications interface to lower levels
  • Transport layer
  • Network layer
  • Datalink layer
  • Multiplexing
  • Connected
  • Connectionless
  • Data structures, descriptors
  • Common types
  • Datagram
  • Stream
  • Raw
  • Common commands
  • Receive, Send, Connect, Listen

25
Software Setup
  • Platforms / Kernels
  • Solaris
  • Windows NT w/ RTX
  • Compilers / Interpreters
  • Visual Basic
  • Java
  • C / C
  • Protocol
  • TCP/IP with artificial random delays

26
Communication Scheme
RTX sampler, VB transmits and receives
Server side (simple echo server w/ added delay)
Client side (motor and controls)
delay
Continuous control based on latest
feedback received through network
delay
delay
time
Output to motor
27
Software Interfacing
C
Visual Basic
Mecha.dll
RTSS Kernel
28
VB Frontend
  • Access shared memory with C code through DLL
  • Polls Data every 20 ms
  • TCP communication handled through Winsock

29
VB Server
  • Holds incoming data with variable delay
  • TCP communication through Winsock

30
C Flowchart
Foreground Handle Commands
Background PI Controller
31
C Timer Flowchart
32
20-40 ms Delay
33
20-40 ms Delay
34
20-40 ms Delay
35
40-80 ms Delay
Kp0.1 Ki0.005
RTX 10 ms VB 20 ms
36
40-80 ms Delay
37
40-80 ms Delay
38
80-120 ms Delay
Kp0.1 Ki0.005
RTX 10 ms VB 20 ms
39
80-120 ms Delay
40
80-120 ms Delay
41
Cyberspace.org Test
42
Cyberspace.org Test
43
Cyberspace.org Test
44
More Observations
  • Varying setpoint and finding critical delay
  • Set Point of 2V 115 ms delay
  • Set Point of 4V 161 ms delay
  • Set Point of 6V 155 ms delay
  • Friction from motor as explanation of above
    results

45
Future Work
  • TCP is NOT supposed to work.
  • Why?
  • Use timestamped UDP instead
  • Need to reconfigure our ad hoc scheme
  • Delay causes
  • Exponential network delay growth for TCP
  • Kernel issues
  • Better Interfaces
  • GUI interface
  • Collect MATLAB data
  • More network stats

46
Future Work
  • Analysis of delay
  • Determine maximum delay before instability
  • Develop appropriate controller to handle
    time-varying delays
  • More sophisticated mechanical system
  • Pendubot
Write a Comment
User Comments (0)
About PowerShow.com