290 likes | 426 Views
Development of EPICS Embedded Image Processing System. Takashi Obina, Jun-ichi Odagiri, Ryota Takai KEK, Accelerator Laboratory. Outline. Requirements for Image Processing Our Solution Driver/Device Support Display Application Conclusion. Requirements for Image Processing.
E N D
Development of EPICS Embedded Image Processing System Takashi Obina, Jun-ichi Odagiri, Ryota Takai KEK, Accelerator Laboratory
Outline • Requirements for Image Processing • Our Solution • Driver/Device Support • Display • Application • Conclusion EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Requirements for Image Processing Requirements from operation : NOT so severe • EPICS ! • Stable operation • Update Rate • at least 1Hz; Faster is better • 10Hz is enough for most purpose (for Human-based feedback or tuning) • 30 Hz is not necessarily required • Needs external trigger • Background subtraction for Screen Monitor • Capability for complex calculation • Beam Size Monitor with the SR Interferometer • Nonlinear curve fitting is required EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Example images : KEK-PF ScreenMonitor (Beam Transport Line) SR Monitor SR Interferometer (Beam Size Monitor) EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
There are so many possibilities ... • Hardware • PC / Embedded platform • Operating System • Linux / Windows • Interface • Image Grabber Board (PCI, PCIe, etc) • USB / FireWire (IEEE1394) • GigE (Ethernet) • Camera Link • Camera • Speed (Frame Rates [fps]) • Resolution[pixels] / number of bits • CMOS or CCD EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
What was important for us? • Stability • Rapid application development • Cost Effectiveness • Support of colleagues and/or company • Long-term operation • “Lifetime” of software and hardware EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Our misery experience • We have been used Windows PC and frame grabber for interferometer analysis • The software is 'discontinued' • Hardware/Software Only supports Win98! • Didn’t work after the “Windows Update” MUST be avoided in the new system EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Our Solution • Yokogawa PLC-Based System • CPU : F3RP61 with Linux OS • Image Acquisition Module (UM02) • PCI Interface to CPU This system is supposed to fulfill the requirements. Especially for “Hardware Reliability” and “Product Lifetime”, and “support of colleagues” EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Benefit of PLC-Based system • Many Digital and Analog I/O module • cheaper than VME • We can easily control other equipments such as screen monitor driver • Reliable Hardware (No FAN) • Compact • Easy to handle by EPICS • Linux have many software tools EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Test on Table Photo2 CPU UM02 Power Supply DO EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Main Specifications of F3UM02 EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Record Support • New record type "graphics record" • Originally developed for other project (2003) • Just remove several unused functionality • Raw Image (waveform) • Reduced-size Image • H/V Size information • Background subtraction • Image analysis • projection to horizontal/vertical direction • peak position, peak value, FWHM, etc • Possible to enable/disable these calculations EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Device Support • PCI bus between CPU and UM02 module • devGrF3UM02.c • Interface graphicsRecord to hardware • issued by "I/O_interrupt" scan request • just transfer raw image data to record dbd : device(graphics, INST_IO, devGrF3UM02, "F3UM02") EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Display • For test : python + PIL (Python Imaging Library) • For Operation : EDM EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Example : BG Subtraction EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Example : Profile, peak, etc These parameters are calculated in the GraphicsRecord EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Test on Optical Table SONY HR-50 F3RP61 F3UM02 EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Example : Interferometer Due to deformation and dirty of the mirror and extraction window, interference fringe is not good as other beam line. We will replace the mirror and window in this summer. EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
As a first step, nonlinear curve fit is tested by gnuplot. If we use other (fast) PC or server machine, we can use matlab or other program. EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Performance • Free Run Mode : 15Hz update rate • Trigger Mode • tested : 1Hz, 2Hz, 5Hz, 10Hz • Linux RT version is not used yet EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Performance : CPU Load (1) 1) NO Analysis, NO Channel Access 2) Analysis Only EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
CPU Load (2) 3) Channel Access Only. (NO Analysis) We plan to optimize ‘Analysis’ routine. EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
How to do with NTSC signal? • In the beam transport line, we have been used about 10 CCD cameras with NTSC output, and commercial video switcher is used for many years. • UM02 input signal : RGB color • We must use NTSC – RGB converter • Confirmed to capture the image • Linearity is not evaluated yet EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Photo EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Just for fun • 3D Movie with two camera; Phantogram EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
Conclusion • We have developed image acquisition system on embedded platform • New Record/Device support is developed • Basic analysis is performed inside the record • Testing in PF-Ring, Linac • What’s Next? • Improvement of RT performance • Calibration of NTSC to RGB converter • Documentation • Asyn / AreaDetector / SynApps ? EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan
References • PCaPAC • http://accelconf.web.cern.ch/AccelConf/pcapac2010/papers/thpl018.pdf “Channel Access Everywhere” Policy Adopt: Keep It Simple and Stupid Avoid : Reinventing the wheel EPICS Collaboration Meeting, NSRRC, Hsinchu, Taiwan