Property interfacing to Hardware: DevIO ACS Development Team.

Slides:



Advertisements
Similar presentations
Device Drivers. Linux Device Drivers Linux supports three types of hardware device: character, block and network –character devices: R/W without buffering.
Advertisements

Primary Author: Girish Verma Secondary Author(s): Navya Prabhakar Presenter: Navya Prabhakar Company/Organization: CircuitSutra USB Modeling Quick Start.
Postgraduate Computing Lectures OO Concepts 1 Object Oriented Programs: Basic Concepts Nick West.
Engineer Training XL1200 Electronics. Engineer Training XL1200 Electronics Confidential 2 XL1200 Electronics The XL Jet Electronic System consists of.
PATTERNS -STRUCTURAL PATTERNS WATTANAPON G SUTTAPAK Software Engineering, School of Information Communication Technology, University of PHAYAO 1.
NRAO/ESO videocon, Feb.12, 2004 ACS ALMA Common software G.Chiozzi and the ACS team.
1 © Wolfgang Pelz UML3 UML 3 Notations describe how to use reusable software. Package Component Deployment Node.
Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments.
Programming the ATmega16
Operating Systems Final Exam Review. Topics F Virtual Memory F File Systems F I/O Devices F Project 3: Macro Shell.
1st ACS Workshop UTFSM ALMA Common Software Training- Course ACS Characteristic Components 1st ACS Workshop UTFSM, Valparaiso, Chile G.Chiozzi, …..
1 Global Sensor Networks A Platform for the Internet of Things Ali Salehi, Prof. Karl Aberer.
Assembly Language for Intel-Based Computers, 5 th Edition Chapter 1: Basic Concepts (c) Pearson Education, All rights reserved. You may modify.
ACS Workshop UCN BACI properties Atacama Large Millimeter Array Alessandro Caproni European Southern Observatory BACI properties.
Internet Architecture Two computers, anywhere in the world, following certain hardware, software, protocol specifications, can communicate, reliably even.
WCMS RESPONSIVE REDEVELOPMENT Project Introduction – Web Dev Rev June 5, 2015 Jonathan Woodcock.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
I/O Tanenbaum, ch. 5 p. 329 – 427 Silberschatz, ch. 13 p
General Purpose FIFO on Virtex-6 FPGA ML605 board midterm presentation
Communication Network Protocols ----Krishna Priyanka Chebrolu.
Shell and Flashing Images Commands and upgrades. RS-232 Driver chip – ST3232C Driver chip is ST3232C Provides electrical interface between UART port and.
General Purpose FIFO on Virtex-6 FPGA ML605 board Students: Oleg Korenev Eugene Reznik Supervisor: Rolf Hilgendorf 1 Semester: spring 2012.
1 Daniel Micheletti Darren Allen Daniel Mazo Jon Lamb Lyle Johnson Pixel Perfect WiCam: A Wireless Digital Camera Presented by : Kyle Swenson.
Using the PSoC USB March 17, 2012 Lloyd Moore, President/Owner.
University of Connecticut Virtual Lab Carl DiFederico, Shane Tobey, Kasim Ward Graduate Student Advisor: Qihang Shi Senior Faculty Advisor: Mohammed Tehranipoor.
ADASS XI Sept30-Oct3, 2001 The ALMA Common Software (ACS) as a basis for a distributed software development G.Raffi, G.Chiozzi (ESO), B.Glendenning (NRAO)
1 Internetworking: Concepts, Architecture, and Protocols.
COMPUTER SYSTEM ARCHITECTURE By Sohaib.  The digital computer is a digital system that performs various computational tasks.  The word digital implies.
Embedded Bluetooth Stack Dean Camera Project Supervisor: John Devlin.
The ALMA Common Software: a developer friendly CORBA-based framework G.Chiozzi d, B.Jeram a, H.Sommer a, A.Caproni e, M.Pesko bc, M.Sekoranja b, K.Zagar.
Tools for Web Applications. Overview of TCP/IP Link Layer Network Layer Transport Layer Application Layer.
02/10/2015 Page 1 R. Theeuws Siemens Atea Filename: CBD_ervaring Werkgroep Component Based Developments Ervaring CBD.
ALMA Control SW & ACS Ralph Marson (NRAO). ALMA Project ACS Course, June 22 – July , Garching, Germany Physical Layout of the M&C network.
Operating Systems ECE344 Ashvin Goel ECE University of Toronto OS Design.
Example title for notes and handouts
INTRODUCTION SOFTWARE HARDWARE DIFFERENCE BETWEEN THE S/W AND H/W.
CPSC 875 John D. McGregor C10 – Physical architecture.
Tokyo July, 2005 ACS Characteristic Components B. Jeram, …..
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CE-321: Computer.
ICALEPCS 2001 Nov , 2001 ACS Common Software for the ALMA Project G.Chiozzi, B.Gustafsson, B.Jeram, P.Sivera – ESO M.Plesko, M.Sekiranja, G.Tkacik,
Human-computer interfaces. Operating systems are software (i.e. programs) used to control the hardware directly used to run the applications software.
APEX (ATACAMA PATHFINDER EXPERIMENT) Heiko Hafok, Dirk Muders Max-Planck-Institute for Radioastronomy, Bonn, Germany.
ACS Component Simulator J. Ibsen European Southern Observatory Garching – January 2007ESO.
SOIS APP Working Group Overview. Presentation Overview Application Support Services Electronic Datasheets ESA Project History and Plans Standards Documentation.
MODUS Project FP7- SME – , Eclipse Conference Toulouse, May 6 th 2013 Page 1 MODUS Project FP Methodology and Supporting Toolset Advancing.
Slide: 1 ICEPAP ICEPAP Software Status Presented by Manuel Perez Member of BLISS group.
Real-Time Systems Presented by: Stuart D Fowell CCSDS Time Critical Onboard Application Services Stuart D. Fowell, Keith L. Scott, Chris.
UNIT III - JDBC JDBC Overview – JDBC implementation – Connection class – Statements - Catching Database Results, handling database Queries. Networking–
Welcome to the world of ARM. COURSE CONTENT Module 1: Introduction  Introduction of ARM Processors  Evolution of ARM  32 - bit Programming Module 2:
1 Software Design Lecture What’s Design It’s a representation of something that is to be built. i.e. design  implementation.
CS-1030 Dr. Mark L. Hornick 1 Basic C++ State the difference between a function/class declaration and a function/class definition. Explain the purpose.
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
Computer Science 340 Software Design & Testing Software Architecture.
CSE 466 – Fall Introduction - 1 User / Kernel Space Physical Memory mem mapped I/O kernel code user pages user code GPLR virtual kernel C
New IP Drivers using drvIpac Module Driver:CANopen Carrier Driver:GPFC drvIpac ?? CANopen Tip810 CAN Tip810 mv162GPFCatc40vipc310vipc616 Module driver.
Architecture Analysis and Design Language: An Overview Drew Gardner.
SWE 4743 Abstraction Richard Gesick. CSE Abstraction the mechanism and practice of abstraction reduces and factors out details so that one can.
Variations on Inheritance Object-Oriented Programming Spring
System Programming Basics Cha#2 H.M.Bilal. Operating Systems An operating system is the software on a computer that manages the way different programs.
CSC241 Object-Oriented Programming (OOP) Lecture No. 17.
Technician Table Editor Academic advisor : Professor Ehud Gudes Technical advisor : Menny Even Danan Team: Olga Peled Doron Avinoam Ira Zaitsev ADD Presentation.
Real Time Systems Lab. 1 AV1394 Board : Now and Future Real Time Systems Lab. Myung Jin (Daniel), Lee.
P9204 – 1kg Robotic Platform System level Design.
Spring Ch 17 Internetworking Concepts, Architecture, and Protocols Part III Internetworking.
Object Oriented Programming in
NeST: Network Storage Flexible Commodity Storage Appliances
Interfaces.
IS 4506 Server Configuration (HTTP Server)
Ninth step for Learning C++ Programming
Presentation transcript:

Property interfacing to Hardware: DevIO ACS Development Team

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 2 Contents problem DevIO concept implementations implementing new DevIO

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 3 Problem Statement Connecting properties with (physical) devices (sensors, motors, controllable units) in a generic way This implies: –Communication with hardware device (points) –Data conversion (i.e. from raw data (binary, hex, …) into engineer units (ampers, …))

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 4 ACS Architecture

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 5 Property Servant Implementation Class Diagram See p. 24, ACS Architecture

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 6 Bridge pattern and DevIO bridge design pattern is used:

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 7 Implementation (C++) DevIO : C++ abstract template class DevIOMem : Default implementation provided by ACS HW specific access provided by specific DevIOXXX implementation one method for read and one for write data example: –ROdouble/RWdouble uses read/write methods from DevIOXXX

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 8 DevIO Implementations Current implementations: –Memory: DevIOMem –TICS: CAN bus: devIOCAN –APEX: Socket: DevIOSock, DevIOUDPSock –HPT: Shack-Hartmann sensor unit, Heidenhains encoder board, … DevIOMem default implementation used by properties

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 9 DevIO interface class Template class DevIO { public: virtual ~DevIO(){}; virtual bool initializeValue()=0; virtual T read(int& errcode, unsigned long long& timestamp); virtual void write(const T& value, int& errcode, unsigned long long& timestamp); };//class DevIO

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 10 Usage creating a property that uses the default DevIO ( DevIOMem ): p = new ROdouble(…, …); createing a property that uses another DevIO (DevIOXXX) implementation: m = new devIOXXX (…); p = new ROdouble(…, …, m); accessing a DevIO DevIO *dev = p->getDevIO();

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 11 Drawbacks It may need different implementation for different conversions Split: –Conversion –communication (read & write)

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 12 New DevIO implementation Inherit DevIO template class Implement: –read –write (if needed)

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 13 Future Improvements Error handling should be done using ACS Error System Decouple communication and conversion: –structure for representing raw data –conversion interface

ALMA Project ACS Training for VLT Developers, February 2004 DevIO 14 References ALMA Common Software Architecture, ALMA-SW-0016 ALMA Common Software Release Notes ACS web site