imatest-control =============== ---------------------- imatest-control ---------------------- Version: 1.28.12916488 - Release Date: 2.7.2025 ---------------------- imatest-control basics ---------------------- The Api has a primary class called ControlSystem. Typically 1 of these needs to be instantiated. Once the ControlSystem is instantiated, Controllers can be added to the ControlSystem. Likewise, Devices can be added to the Controllers. After Adding Controllers and Devices, calling ControlSystem.initializeDevices() will connect to all added controllers and devices. Once Initialized, Commands can be added to devices. If multiple commands are added to a device, the commands are queued. In order to run the commands, call ControlSystem.Update() or ControlSystem.processAll() ControlSystem.processAll() updates all commands incrementally and waits until all commands are finished. Commands A Command is created by creating command package and adding it to the device: .. code-block:: python motionCommand = cntr.MovementCommandPackage() motionCommand.disp_target = 30 commandStatus = controlSystem.addDeviceCommand(device, motionCommand, flags) A command will be created with the parameters given in the passed in DeviceCommandPackage. The following example shows a basic program that controls a "Dummy" Device (a device that does not have actual hardware) .. literalinclude:: examples/Basic_Example.py :language: python :linenos: ------------------------ imatest-control examples ------------------------ KinoFlo_Example ---------------- .. literalinclude:: examples/KinoFlo_Example.py :language: python :linenos: LEDLightBox_Example ------------------- .. literalinclude:: examples/LEDLightBox_Example.py :language: python :linenos: Zaber_Example ------------- .. literalinclude:: examples/Zaber_Example.py :language: python :linenos: RoboClaw(actuator)_Example -------------------------- .. literalinclude:: examples/RoboClaw_Example.py :language: python :linenos: BenchTopTestStand(Manual_Zaber)_Example ------------------------- .. literalinclude:: examples/BTS_Example.py :language: python :linenos: BenchTopTestStand_Example ------------------------- .. literalinclude:: examples/BTSFraming_Example.py :language: python :linenos: ------------------------- imatest-control reference ------------------------- .. automodule:: controlAPI :undoc-members: :members: :show-inheritance: :inherited-members: