SbRIO Control System Summer 2012 Release 1.0 Christopher Gerth – Development Lead.

Slides:



Advertisements
Similar presentations
INPUT-OUTPUT ORGANIZATION
Advertisements

Jordan Barry Victor Brzeski
1 iHome Automation System Home Automation System Team: Million Dollar Contingency Regiment Adam Doehling Chris Manning Ryan Patterson.
Programmable Interval Timer
1. 2 LabVIEW for FRC Doug Norman National Instruments January 6, 2012.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir.
SPI Serial Peripheral Interface. SPI Serial Peripheral Interface is communication between two devices, one bit at a time sequential one bit at time over.
1. 2 FRC 2010 Driver Station Doug Norman & Stephanie Brierty National Instruments January 8, 2010 Thanks to Joe Ross – Team 330.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Introduction Part 3: Input/output and co-processors dr.ir. A.C. Verschueren.
EML 2023 – Motor Control Lecture 4 – DAQ and Motor Controller.
Using an FPGA to Control the Protection of National Security and Sailor Lives at Sea Brenda G. Martinez, Undergraduate Student K.L. Butler-Purry, Ph.D.,
Motor Control Lab Using Altera Nano FPGA
MotoHawk Training Model-Based Design of Embedded Systems.
Part 1: Introduction FRC Introduction  FRC 2907 since 2008  Each area of the robot has a team assigned  The Electronics team is headed this year.
Overview of New System Beta Team from Wilsonville 1425 Wilsonville Robotics – Code Xero 2550 Oregon City Robotics.
FRC LabVIEW Software Overview Joe Hershberger Staff Software Engineer National Instruments.
Computerized Train Control System by: Shawn Lord Christian Thompson Advisor: Dr. Schertz.
Department of Electrical and Computer Engineering Texas A&M University College Station, TX Abstract 4-Level Elevator Controller Lessons Learned.
IO Controller Module Arbitrates IO from the CCP Physically separable from CCP –Can be used as independent data logger or used in future projects. Implemented.
Coordinate Based Tracking System
Timers and Interrupts Shivendu Bhushan Summer Camp ‘13.
Wireless Data Acquisition for SAE Car Project by: J.P. Haberkorn & Jon Trainor Advised by: Mr. Steven Gutschlag.
Final Presentation Momentum Measurement Card Project supervised by: Mony Orbach Project performed by: Hadas Preminger, Uri Niv.
A Guide to major network components
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
LabView Users Group Meeting June 20 th, 2006 Process Control Using Compact Field Point/Labview Real-time Michael Tockstein Microelectronics Technology.
INPUT-OUTPUT ORGANIZATION
Computerized Train Control System by: Shawn Lord Christian Thompson.
Drivers Station 2010 Joe Ross Team /12/2009.
Driver Station MVRT 2009 – 2010 Season. Add information Breadboard Classmate PC USB Hub Joysticks Stop Button.
 Chasis / System cabinet  A plastic enclosure that contains most of the components of a computer (usually excluding the display, keyboard and mouse)
Chapter 8 Input/Output. Busses l Group of electrical conductors suitable for carrying computer signals from one location to another l Each conductor in.
Introduction to USB Development. USB Development Introduction Technical Overview USB in Embedded Systems Recent Developments Extensions to USB USB as.
Component 4: Introduction to Information and Computer Science Unit 7: Networks & Networking (Part 4 of 5)
AKR Sales Training For KOMAF Exhibition Kunyu Lee Product Manager
Wireless Sensor Monitoring Group Members: Daniel Eke (COMPE) Brian Reilly (ECE) Steven Shih (ECE) Sponsored by:
Final Project Review – 4/10/2008 Al Mukmin Judson Ryckman Miguel Roncal Paul Otto Walter Thorn.
RC CAR CONTROLLER BASED ON INTEL GALILEO SOC PLATFORM Nadav Shiloach Sagi Sabag Supervisor: Idan Shmuel Spring 2014 One Semester Project PROJECT’S ENDING.
Collaborative mobile robots Rory McGrath Progress Report.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Connecting to the Network Networking for Home and Small Businesses.
Data Acquisition Data acquisition (DAQ) basics Connecting Signals Simple DAQ application Computer DAQ Device Terminal Block Cable Sensors.
DEVELOPMENT OF A ROBOTIC TANK, BASED ON A SMART CAMERA SUBMITTED BY: DANIEL ALON AND AVIAD DAHAN SUPERVISED BY: OREN ROSEN CRML 2012.
Upgrade to Real Time Linux Target: A MATLAB-Based Graphical Control Environment Thesis Defense by Hai Xu CLEMSON U N I V E R S I T Y Department of Electrical.
MICROPROCESSOR INPUT/OUTPUT
2009 FRC Control System Software Overview Dave Doerr, Mentor, Team 67 November 15, 2008.
DLS Digital Controller Tony Dobbing Head of Power Supplies Group.
Computer Concepts 2014 Chapter 5 Local Area Networks.
(More) Interfacing concepts. Introduction Overview of I/O operations Programmed I/O – Standard I/O – Memory Mapped I/O Device synchronization Readings:
NETWORKING COMPONENTS AN OVERVIEW OF COMMONLY USED HARDWARE Christopher Johnson LTEC 4550.
Other Chapters From the text by Valvano: Introduction to Embedded Systems: Interfacing to the Freescale 9S12.
Original 8-slot Version – Chassis – 8-slots (6 available, 2 unused) – Modules & breakouts – Module order for 2012 (changed in 2012) – Slot.
Hands-on Teleoperation TARET Winter School Villach, February 5 –16, 2007 Darko Hercog.
Features of the new Alibava firmware: 1. Universal for laboratory use (readout of stand-alone detector via USB interface) and for the telescope readout.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
Lecture 12: Reconfigurable Systems II October 20, 2004 ECE 697F Reconfigurable Computing Lecture 12 Reconfigurable Systems II: Exploring Programmable Systems.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Connecting Devices CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL Department of Electronics and.
Automatic accident avoiding system PROJECT MEMBERS MUTHUKUMAR.K (05ME33) SAKTHIDHASAN.S (05ME39) SAKTHIVEL.N (05ME40) VINOTH.S (05ME56) PROJECT GUIDE:
Understanding The 2008 FRC Robot Controller Chris Gregory FRC1089 – Team Mercury
8254 Timer.
Term 2, 2011 Week 2. CONTENTS Communications devices – Modems – Network interface cards (NIC) – Wireless access point – Switches and routers Communications.
P09311: FPGA Based Multi-Purpose Driver / Data Acquisition System Sponsor: Dr. Marcin Lukowiak Team MemberDisciplineRole Adam Van FleetEEProject Manager/Documentation.
Networking Components William Isakson LTEC 4550 October 7, 2012 Module 3.
Product Overview 박 유 진박 유 진.  Nordic Semiconductor ASA(Norway 1983)  Ultra Low Power Wireless Communication System Solution  Short Range Radio Communication(20.
KNU RTLAB A Real-Time Linux System For Autonomous Navigation And Flight Attitude Control Of An Uninhabited Aerial Vehicle Charles E. Hall, Jr. Mechanical.
MADEIRA Valencia report V. Stankova, C. Lacasta, V. Linhart Ljubljana meeting February 2009.
FRC Robot Electronics.
Module 1: Understanding Local Area Networks
Intro to USB-6009 DAQ.
Introduction to Microprocessors and Microcontrollers
♪ Embedded System Design: Synthesizing Music Using Programmable Logic
Presentation transcript:

sbRIO Control System Summer 2012 Release 1.0 Christopher Gerth – Development Lead

Overview What? – A customized, highly flexible, and extremely powerful control system for JSDC robots. – Adaptable to any possible robot configuration How? – Through a generous donation of hardware and software by National Instruments Why? – To build groundwork for future members to have the engineering ability to execute any control system design

Block Diagram sbRIO Robot mechanical interfaces Host PC Wifi Router Other Ethernet- based Interfaces Robot Ethernet Link USB link Xbox controller Xbox receiver

sbRIO Basis of the System: National Instruments sbRIO 9642 – 400 MHz Processor, 256MB long-term storage, 128MB program-accessible DRAM – 2M gate Xilinx Spartan FPGA – v DIO lines, bit analog inputs, 4 16-bit pure voltage (not pwm) analog outputs – 32 High-current DIO’s (Run from external power supply at 6-30V) – 10/100BASE-T Ethernet, RS232 port – Performs all major calculations and generates control signals for robot’s mechanical interfaces – Many interfaces available, but only some are broken out through custom hardware plugs. These can be remade in future years as designs require more interfacing.

sbRIO

WIFI Router Cisco Linksys E2500 Router/Wifi access point – Supports B/G/N 2.4 GHz and 5.0Ghz Wifi – Located on the Robot – Facilitates rapid communication between Host PC and Robot – Allows other IP-based peripherals (like cameras) to be interfaced.

WIFI Router

Host PC Primary development tool Should be club laptop Runs NI’s Labview development environment Interprets USB-based operator interfaces Maintains server for all robot-PC communication – Primary purpose is to have a library of shared variables which can be published over the main Ethernet Link – Secondarily, serves as a monitoring point to view all data streamed into and out of the robot, as well as current controller status.

Driver Interfaces Xbox 360 controllers (2x) Wireless, both communicate with PC through a special receiver (purchased with the controllers) and USB Abstracted through a DirectX interface; Labview handles all communication interfacing.

Driver Interfaces

Software Developed under NI’s graphical Labview environment. Three main VI’s, controlling the three processors – Host PC’s processor – sbRIO’s processor – sbRIO’s FPGA Communication between these three asynchronous processes occurs via shared variables, or an FPGA FIFO.

Software SubFunctions VI running on the Host PC serves only to establish shared variable server, and transfer joystick data to the sbRIO VI running on sbRIO maps joystick values to motor values with appropriate scaling – Coordinates inputs from sensors with desired actions based on joystick/button input. VI running on sbRIO’s FPGA handles all time intensive tasks, as well as routing all I/O data to the processor – Currently, it tracks encoder positions and generates PWM signals – Care needs to be taken when altering this design – recompiling the code takes over 10 minutes.

Communication Block Diagram Host PCsbRIO Processor sbRIO FPGA Mechanical Interfaces FIFO and Network Published Data FIFO Registers PWM, TTL 3.3v Logic, Analog IO UpstreamDownstream

Communication Host PC sbRIO Processor – Both run co-dependent VI’s – Utilize Shared Variables Stored primarily on Host PC Published to the Network FIFO data structure used for deterministic data transfer downstream from PC to sbRIO Host PC’s main loop runs slower than sbRIO’s so that FIFO does not clog up. Status information associated with the interface of the VI is transferred back to the PC periodically.

Communication (IP) Wireless Ethernet (WIFI) link is the primary control method Static IP addresses – sbRIO: – Router: – Subnet mask: – Router Name (Not network name): Cisco73548 – SSID: iRobotics (hidden) – Network key: *******************

Communication (IP Security) WAP2 Security AES Encryption – Other teams should not be able to sniff the packets 5 GHz radio disabled SSID Not broadcasted Wireless access restricted by MAC Address (only sbRIO and host PC allowed to connect) – Other teams should have a very hard time connecting in to our network No Firewall enabled (so don’t hook the internet up!)

Communication sbRIO’s Processor FPGA – Again, FIFO data structure used in downstream direction. – FPGA runs much faster than processor Processor loop time = 10 ms FPGA loop time = 1.89 µs – Upstream data flow is read by processor from buffered registers.

FPGA Fully Programmable Gate Array Serves multiple functions – Routes all I/O into processor – Frees up processor from time-critical tasks Generates PWM signals Counts encoder ticks to keep track of wheel position

Safety Cutouts Maintaining safe operating conditions in the event of a communication failure is of paramount importance – When VI is shut down, sbRIO passes high (invalid) signals to PWM outputs. Should be accounted for when designing systems which receive digital outputs – When Ethernet is disconnected but VI continues to run, PWM signals go to 1.5% duty cycle (full stop) Possibility of reconnection, so sbRIO waits for new signals. Accomplished through a timeout monitor – if it takes more than 50ms to read in a shared variable, motors will shut down. – Digital outputs remain unaffected Independent “Emergency Stop” variable exists for a software-initiated stop.

Outputs (1) PWM – 8 implemented in Hardware – Three pin outputs: Ground, +5v, Signal – Pulse lasts between 1 and 2 ms, and repeats every 20 ms. Results in a 500 Hz square wave, with duty cycle between 1% and 2% 1.5% is full stop, 1% is full reverse, 2% is full forward. Victors might have to be calibrated, IFI systems seem to use a slightly different system. Digital – 3.3v output, 3mA output per channel, 330mA total max. Analog – 4 pure analog (not PWM) outputs. – Range from -10v to 10v at 16 bit resolution, 3mA max drive.

Outputs (2) Relay (Spike) – Same as Digital outputs, but grouped into two pins on the red and white wires in a PWM cable to drive a Spike Relay. High-Current – 10 implemented in hardware. – Sourcing output from an external power source at 6v to 30v – 250mA output per channel, possible to increase to 1.5 A with heatsinks – Total Power not to excede 20A or supply’s maximum

Inputs Quadrature Encoder – Each one consists of two inputs, one for each channel – Counts normal two-bit grey code output, stores current position in FPGA register for use by the processor – Utilizes XOR algorithm which accounts for small-angle rotations, and increments by four every full grey code cycle. Digital – 3.3v input, 5v tolerant (compatible with TTL) Analog – Unimplemented in hardware, but 32 single ended or 16 differential inputs exist – 16 bit resolution on a -10v to 10v range – Run at 250kSamples/sec (max frequency = 700kHz)

Electrical Specs sbRIO takes a 19-30v supply. We utilize the 24v boost power supply on the FRC power distribution board. Take care to ensure digital ground remains isolated from battery/power supply ground. Router takes 12 v. supply. Utilize the regulated supply on the FRC power distro board.

Revision Updates 1.0 – Base Release