VimbaPython icon indicating copy to clipboard operation
VimbaPython copied to clipboard

use softwere trigger by command

Open shaizae10 opened this issue 2 years ago • 1 comments

hi i use that code

import time
import numpy as np
from HW.vimba import *

def handler(cam, frame):
    print('Frame acquired: {}'.format(frame), flush=True)
    cam.queue_frame(frame)

class alvium1800api:
    def __init__(self):
        with Vimba.get_instance() as vimba:
            self.cam = vimba.get_all_cameras()[0]
            with self.cam:
                self.cam.TriggerSource.set('Software')
                self.cam.TriggerSelector.set('FrameStart')
                self.cam.TriggerMode.set('On')
                self.cam.AcquisitionMode.set('Continuous')

    def initialize_communication(self):
        pass

    def take_single_measurement(self) -> np.ndarray:

        with self.cam:

            self.cam.start_streaming(handler)
            time.sleep(1)
            frame=self.cam.TriggerSoftware.run()

            self.cam.stop_streaming()
            return frame.as_numpy_ndarray()


if __name__ == "__main__":
    example = alvium1800api()
    example.take_single_measurement()

and it is return to my the result

`Traceback (most recent call last): File "D:\Repos\Diamonds\HW\vimba\camera.py", line 907, in _open call_vimba_c('VmbCameraOpen', self.__info.cameraIdString, self.__access_mode, File "D:\Repos\Diamonds\HW\vimba\util\tracer.py", line 134, in wrapper return func(*args, **kwargs) File "D:\Repos\Diamonds\HW\vimba\c_binding\vimba_c.py", line 757, in call_vimba_c getattr(_lib_instance, func_name)(*args) File "D:\Repos\Diamonds\HW\vimba\c_binding\vimba_c.py", line 675, in _eval_vmberror raise VimbaCError(result) HW.vimba.c_binding.vimba_common.VimbaCError: VimbaCError(<VmbError.ApiNotStarted: -2>)

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "D:\Repos\Diamonds\Common\alvium_1800\alvium1800api.py", line 40, in example.take_single_measurement() File "D:\Repos\Diamonds\Common\alvium_1800\alvium1800api.py", line 28, in take_single_measurement with self.cam: File "D:\Repos\Diamonds\HW\vimba\util\tracer.py", line 134, in wrapper return func(*args, **kwargs) File "D:\Repos\Diamonds\HW\vimba\camera.py", line 362, in enter self._open() File "D:\Repos\Diamonds\HW\vimba\util\tracer.py", line 134, in wrapper return func(*args, **kwargs) File "D:\Repos\Diamonds\HW\vimba\util\context_decorator.py", line 44, in wrapper return func(*args, **kwargs) File "D:\Repos\Diamonds\HW\vimba\camera.py", line 924, in _open raise exc from e HW.vimba.error.VimbaCameraError: <VmbError.ApiNotStarted: -2>

Process finished with exit code 1 `

I am not understending why that can't run :(

shaizae10 avatar Feb 14 '23 10:02 shaizae10

Thank you for reporting this issue. I would request you to check the Vimba Python Manual. We have a software trigger example code.

arunprakash-avt avatar Feb 16 '23 07:02 arunprakash-avt