Presentation is loading. Please wait.

Presentation is loading. Please wait.

Development of a data acquisition program builder via a user interface F.Fujiwara, N.Tamura, M.Abe, S.Enomoto, G.Iwai, S,Kawabata, A.Manabe,Y.Nagasaka,

Similar presentations


Presentation on theme: "Development of a data acquisition program builder via a user interface F.Fujiwara, N.Tamura, M.Abe, S.Enomoto, G.Iwai, S,Kawabata, A.Manabe,Y.Nagasaka,"— Presentation transcript:

1 Development of a data acquisition program builder via a user interface F.Fujiwara, N.Tamura, M.Abe, S.Enomoto, G.Iwai, S,Kawabata, A.Manabe,Y.Nagasaka, I.Nakano, H.Sakamoto,Y.Sakamoto, T.Sasaki, R.Tanaka

2 Outline 01 Data AcQuisition program Builder A class library A software which can be use to make a data acquisition system software using the class library via a UserInterface.(UI)

3 Outline 02 Has many classes with following functions –Control Hardware module –Provide object stream( to File, to Network, etc I/O..) –Provide interface to other analyzers (ROOT etc...) It has been designed with the Object-Oriented Language C++(100% pure)

4 Outline 03 For using the DAQ-Builder CL interactively –Can create arbitrary objects in the class library –Can operate objects created via the UI Two versions exist now (GUI,CUI)

5 Backgrounds Required software knowledge is too much for the beginner. –Environmental maintenance –Programming technique –UNIX system call etc.. Every experiment has a unique DAQ-system Toolkits for developing DAQ exist in the world –KONOE,CLDAQ.. –> Great deal of such knowledge is required

6 Purpose To Support the development of a data acquisition system software of small experiments. – Users can develop DAQ easily. – To reduce amount of required knowledge. DAQ-Builder also allows the user a shorter development period. – Users can develop via the user interface, without software program-compile work. – Users can develop intuitively using the GUI.

7 Which objects are required for an experiment!? To control hardware module –CAMAC,VME,GPIB To record experiment data –DataRecord,ReadoutList To save data or To pass to a network –FileInputStream,Socket,SocketOutputStream To event display and analysis –1DHistogram,2DHistogram etc..

8 Creating an objects Example01

9 Action & Run Object Users should create some Action Objects & a Run Object Define operation of objects.. (Action Object) Install Action Objects into the Run Object( Main Object ) Operate Run Object

10 The Action object is installed in the Run Object Example02

11 Example03

12 Instance Class Partner plug-in Class loader How to create or operate ?

13 All classes in the class library Inherit class Object –Has reference count,current type, inherit information. All objects are held in Instance object –Operate objects reference count Instance Object

14 Each class defined by the CL has their own partner plug-in. Has methods return value type and arguments types. Object is operated by the method "execute" in the plug-in. A Partner Plug-in

15 Parse an information stored in the Action object. Open the plug-in corresponding to the object. Extract the function executes image from plug-in. Execute Check Objects operation( arguments, return value...check) Class Loader

16 Features Macro file –Things Created and Operated is recorded as Macro file –Resembles C++ form Garbage collection –You can forget to delete objects.If you create an object via the DAQ-Builder-UI Extendibility –You can extend DAQ-Builder by developing plug-in with specified style

17 Compare the Run Object created via the User Interface and execute file compiled by the source code using the Class Library. Performance Test01

18 Performance Test02 When data is read from one module –In the case which the number of channels increased –In the case which the number of events increased

19 Performance Test03 In the case which the number of channels increased

20 Performance Test04 In the case which the number of events increased

21 Analysis –There is not a difference, In the case which the number of channels increased. –There is the difference of performance about 3 times, In the case which the number of events increased –Overheads of “Class Loader” –Using UI means that a performance decrease about 3 times compared to Using raw Class Library Performance Test05

22 DAQ can be developed interactively We will be able to shorten the development period Has following features. –Macro File –Garbage collection –Plug-in Decrease performance compared to using raw Class Library Summary

23 Enrich GUI to make it easier to use Optimize the DAQ-Builder to improve performance Make the manual user-friendly Get the world out about DAQ-Builder http://sourceforge.jp/projects/daq-builder Won't you join me ? Future Goal & To do

24 Macro file – Things Created and Operated is recorded as Macro file –Resembles C++ form


Download ppt "Development of a data acquisition program builder via a user interface F.Fujiwara, N.Tamura, M.Abe, S.Enomoto, G.Iwai, S,Kawabata, A.Manabe,Y.Nagasaka,"

Similar presentations


Ads by Google