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> 2025 | 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> 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | New to EPICS - wants to use motorMotorSim - Python client |
From: | Guijarro Mathias Charles via Tech-talk <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Tue, 17 Sep 2024 14:36:38 +0000 |
Hi there,
I am new to EPICS. I would like to run a motor simulation driver (or is it IOC ? Or "server", well something I can use
to connect to, that would simulate the behaviour of a motor), and to test it with Python.
I do not want to try with Docker, as I prefer to have individual processes running locally, to learn about the
basics first.
Here is what I did so far:
- made a new Conda environment
- installed Epics from Conda , to have EPICS_BASE in $CONDA_PREFIX/epics
- and dependencies:
https://github.com/epics-modules/asyn ,
https://github.com/epics-modules/sequencer
- cloned submodule "motorMotorSim"
- compiled all those (first asyn, then sequencer, then motor)
- had to guess a bit where to put EPICS_BASE directory in various configure/RULES etc
- had to install "sun rpc" on my system, and "re2c" from conda-forge (if I remember correctly)
- at the end I had to manually copy the include, lib, bin, dbd, db files ; is it the normal way ?
- I managed to set IOCS to True to have IOC compiled
So now I have 4 executables with the same name:
./motor/bin/linux-x86_64/motorSim
./motor/modules/motorMotorSim/iocs/motorSimIOC/bin/linux-x86_64/motorSim
./motor/modules/motorMotorSim/iocs/motorSimIOC/motorSimApp/src/O.linux-x86_64/motorSim
./motor/modules/motorMotorSim/motorSimApp/src/O.linux-x86_64/motorSim
They are different (not the same md5sum).
Running any of those gives me an "epics>" prompt.
What should I do, to run it to be able to test something with a Python client ? Or at least with caput/caget ?
How to configure it (limits, velocity, etc) ?
I could not find any guide for this on internet, or at least it was not as easy as I thought... So I prefer
to ask in order to get the "minimum viable information".
Later on I will try to run other simulated devices probably... So better to learn about the system "the hard
way" !
Any help would be appreciated.
Thanks in advance,
Matias.
|