1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 <2007> 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 <2007> 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | System design/implementation question |
From: | Heinrich du Toit <[email protected]> |
To: | TechTalk EPICS <[email protected]> |
Date: | Tue, 04 Sep 2007 07:45:54 +0200 |
Hi I'm in the process of implementing an RF system on EPICS. This will be the first complete system I have here at iThemba LABS :) So far I have an IOC that is setup with PVs that can talk to almost all the hardware. (2 small things outstanding) So now through these PVs I can speak to the hardware. But I need to implement a more intelligent management layer above that. and then above that comes the MEDM interfaces. My first idea was to use the sequencer and write an snl program to do this. But this doesn't really seem to suit my needs as nicely. Now I'm thinking that a running a python script also on the IOC computer (linux) is maybe a better idea? Python ca is easy as far as I know (only done some basics) And writing in python is also fairly easy :) My idea is to add more PVs to the IOC. The python script will then look at these PVs to decide what todo. For example there will be a PV called $(sys):RFon When that is made 1(true) then the python script will start the switchon sequence. And when it is made 0 the script will switch of the system again. I this a good/bad idea? Anything else you can tell me to help me on the road ahead will help? Another question: To move the trimmers inside the RF system I have 2 methods. method 1 is to write steps to the stepper motor - using a very stupid interface and not being able to really know if the motor is finish with moving. method 2 is setting direction and speed and then saying go. Then after x amount of time saying stop. This means I need to write to the trimmer registers within 1ms timing accuracy. I currently have an asyn driver that speaks to the hardware. The actual write routines are very fast. Is this possible? Even maybe through channel access(on same machine) or how should I try this? Thank you for your support! -Heinrich