Hi Pavel,
I would recommend building a EPICS application for Windows XP. You don’t have to use the embedded system itself as your development platform, you could develop on another
Windows system (XP or Windows 7) that has higher performance, faster larger disks, etc. You can create a static executable for your IOC, and then download it onto the embedded XP system.
I would suggest using asynPortDriver as the base class to create your driver. You then don’t have to write any device support, just the driver.
If you look at my driver for the Measurement Computing USB-1608GX-2A0 it could serve as a useful starting point. It is quite similar to what you are doing: the vendor provides
a C/C++ callable library for controlling ao and ai functions.
http://cars.uchicago.edu/software/epics/measComp.html
I gave a training class at the recent EPICS meeting which included a tutorial on how to write a driver using the Measurement Computing USB-1608GX-2A0 as an example. I went
through 5 versions of the driver, starting with Version 1 that just supported 2 analog outputs and was only 131 lines of code. Each version of the driver added more features, with version 5 supporting analog in, analog out, programmable pulse generator, digital
in, digital out, and pulse counters. It is still only 484 lines of code. The final released version of the driver supports waveform generator and waveform digitizer functions, and is 1254 lines of code.
The link to the talk is here:
https://slacportal.slac.stanford.edu/sites/conf_public/epics_2012_04/presentations/measCompDriverTalk.pdf
and the link to the source code for the example drivers is here:
https://slacportal.slac.stanford.edu/sites/conf_public/epics_2012_04/presentations/asynTraining2012.zip
Cheers,
Mark
From: Pavel Masloff [mailto:[email protected]]
Sent: Friday, May 25, 2012 9:42 AM
To: Mark Rivers
Cc: EPICS Tech Talk
Subject: Re: [NI] PXI 1000 EPICS support ?
Hi Mark,
If I would like to use the embedded Windows processor, should I use the existing Windows XP as the host platform and install EPICS base, ASYN, then somehow manage to write a driver for my AI/AO card, and use it in tandem with ASYN?
Or Linux will be a more suitable system?
The thing is that I have all the drivers installed (including the NI 6070E boards) on my embedded Windows controller, because it was in operation some time ago (using NI LabView), but now it's just doing nothing, awaiting the recycling bin.
I am just new to embedded devices like this.
What would you recommend?
Thanks.
On Fri, May 25, 2012 at 6:22 PM, Mark Rivers <[email protected]> wrote:
Hi Pavel,
Yes, you should be able to do that.
One of the devices I support is the XIA xMAP, which is a PXI digital x-ray spectroscopy card. It can be run either
from an embedded Windows processor like you have, or from a separate PC with a National Instruments PCI to PXI link adapter.
http://cars.uchicago.edu/software/epics/dxp.html
You would need to write the driver for your AI/AO cards, but National Instruments should give you a C/C++ callable
library to do that.
Mark
From:
[email protected] [mailto:[email protected]]
On Behalf Of Pavel Masloff
Sent: Friday, May 25, 2012 9:13 AM
To: EPICS Tech Talk
Subject: [NI] PXI 1000 EPICS support ?
Dear all,
I have found an old NI PXI chassis in our lab with the following configuration:
Chassis: NI PXI 1000
Embedded controller: NI PXI-8106
Cards: NI MIO 6070E (AI/AO modules, 3 pcs)
The embedded controller is running Windows XP Professional National Instruments.
Is there any chance to save the device and run EPICS on it?
--
Best regards,
Pavel Maslov, MS
Controls Engineer at Pulsed power Lab
Efremov Institute for Electro-Physical Apparatus
St. Petersburg, Russia
Mobile: +7 (951) 672 22 19
Landline: +7 (812) 461 01 01
--
Best regards,
Pavel Maslov, MS
Controls Engineer at Pulsed power Lab
Efremov Institute for Electro-Physical Apparatus
St. Petersburg, Russia
Mobile: +7 (951) 672 22 19
Landline: +7 (812) 461 01 01