Difference: DLPLightCommander (8 vs. 9)

Revision 92011-09-20 - BradAtcheson

Line: 1 to 1
 
META TOPICPARENT name="PsmSpace"
Back to PSM Lab
Line: 130 to 130
 
Added:
>
>

Direct Access to API

The LogicPD control software GUI is tedious to use for repeated experiments, and cannot be scripted. Defining a pattern sequence requires that you click the "add" button, navigate to a file (the file choose defaults to only displaying BMP images), select and add it, optionally choose a threshold value, and click OK. Then it takes a few seconds to convert the file to the native DBI format. For a sequence of hundreds of patterns, this can take a very long time, and making changes to the patterns will be tedious and error-prone. Fortunately, the DBI format is very simple and can be reverse engineered. Even more fortunately, all the important bits are implemented in a DLL file (the control software simply calls this) and one of those DLL functions can execute a batch file (text file) containing commands that map directly onto DLL functions. It's very easy to call these functions from Python. See the attached script for an example of how to generate the DBI files and display them in sequence. There are some tricky aspects to this (particularly dealing with triggers), described in more detail in the script comments. To run the script, make sure that PortabilityLayer.dll and DlpCommDLL.dll (from the SDK) are in the same directory.

-- BradAtcheson - 20 Sep 2011

  -- OliverSchneider - 27 Apr 2011

META FILEATTACHMENT attr="" comment="Local copy of the documentation" date="1304040434" name="dlpa024a.pdf" path="dlpa024a.pdf" size="314324" user="nasarouf" version="1.1"
META FILEATTACHMENT attr="" comment="Photo of external trigger sync" date="1316212929" name="LightCommanderExternalTrigger.pdf" path="LightCommanderExternalTrigger.pdf" size="158162" user="atcheson" version="1.1"
Added:
>
>
META FILEATTACHMENT attr="" comment="Example structured light upload/run script" date="1316510269" name="dlp_run.py.txt" path="dlp_run.py" size="10159" user="atcheson" version="1.1"
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback