1 / 8

New IP Drivers using drvIpac

New IP Drivers using drvIpac. ?. ?. CANopen Tip810. CAN Tip810. Module driver. Module Driver: CANopen Carrier Driver: GPFC. Generic driver API is hiding architecture of carrier board from driver. drvIpac. mv162. GPFC. atc40. vipc310. vipc616. Carrier driver. create. destroy.

valiant
Download Presentation

New IP Drivers using drvIpac

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. New IP Drivers using drvIpac ? ? CANopen Tip810 CAN Tip810 Module driver Module Driver: CANopen Carrier Driver: GPFC Generic driver API is hiding architecture of carrier board from driver drvIpac mv162 GPFC atc40 vipc310 vipc616 Carrier driver

  2. create destroy request open get put .... CANopen Driver for Tip810 Application interface can be used by device support or any other (non-)EPICS application. CANopen Tip810 Interrupt initialisation etc. drvIpac Get addresses of module regs carrierDrv i.e. GPFC, 162 Direct access Carrier IP module TIP810

  3. Data transfer is implemented for CAN/CMS data types • Scalar datatypes: signed and unsigned int of any length (1..64 bits long), Boolean. • Arrays of scalar types (fits in one CAN message) • Structures of scalar‘s and arrays • Indexed data types: up to 127 elements of scalar‘s, arrays or structures • Support for CANopen minimum bootup • CANopen node guarding • Reconnect modules • Report node and bus status to application (EPICS: Alarms) Features of CANopen driver

  4. CAN objects • are created by an application • can be destroyed again, if no other application uses it • are either INPUT or OUTPUT objects • have a list of one or more (for indexed data types only) mailboxes for data exchange • CAN I/O requests • tells the driver to update (input) or send (output) the mailbox contents • are sent through a set of message queues to the driver • are not queued if an old request for that object is still in the queue Implementation

  5. Post processing • is initialised and registered by the application • Registration is implemented as linking into a list • can be canceled at any time • can be set to „one-shot“ or „repeative“ • Not implemented now • SDO (Service Data Objects) and everything depending • CAL (extended) boot-up • Emergency Messages • String Data Types (on to-do-list)

  6. EPICS device support • is using the same driver functions as internal driver mechanisms i.e. node guarding, startup, test • creates a buffer with information for the driver (CAN-ID, post processing function pointers and arguments, etc.) • creates a CAN I/O object • registers for bus and modul error notifications • links it‘s buffer into a list for „one-shot“ or „repeative“ callbacks • is starting a timer and sets timeout error if it times out • is requesting for the I/O Usage of CANopen driver in EPICS

  7. 1.: A 16-bit word from a CANopen digital input module (same for output) field (INP,"@CAN1:N8") CAN1 - is the bus name created in the startup script N8 - node id is 8 -> it‘s a CANopen node -> the default CAN- ID of the „predefined connection set“ is used, node guarding is enabled The data type 16Bit unsigned is default for the longin-support 2.: The second channel of a 4 channel 16 Bit ADC CANopen module field (INP,"@CAN1:N4[2]'L=0,H=4095'") 3.: A CAN message contains 13 Bit of analog input data and 2 Bits of status in the ai-Record: field (INP,"@CAN1:N5'T=UNSIGN13'") in the bi-Record: field (INP,"@CAN1:N5[2]<13") the type BOOLEAN is default for bi. The second bit located left of the analog value is read into the bi record. Examples for EPICS database links

  8. Differences to Andrews tip810 driver* * Please correct me if I‘m wrong Bernd.Schoeneburg@DESY.de

More Related