国产精品久久久久久久免费-国产精品久久久久久久人热-国产精品久久久久久久网站-国产精品久久久久久久专区-国产精品久久久久久免费

VT_Resulting_camera_behaviour.png
如圖所示為通過定序器設置的事件時序圖。

本示例介紹了如何通過一次觸發信號采集三張圖像的定序器編程。為此,需要使用定序器的計數器功能來觸發曝光。

如需了解有關定序器用途的更多詳細信息,請參閱下方的應用說明,其中詳細介紹了定序器的工作原理和功能。

在使用定序器時,可能需要提前設置,以便可視化顯示在什么時間應當發生的事件。在本例中,設置非常簡單:

第一張圖像的采集由硬件觸發(通過“Line0”輸入實現)——Line0同時觸發定序器啟動

第一組定序器(Set0)開始配置并觸發第二張圖像的采集

第二組定序器組(Set1)開始配置并觸發第三張圖像的采集

    // STOP ACQUISITION AND LOAD DEFAULT PARAMETERS
pDevice->GetRemoteNode("AcquisitionStop")->Execute();
pDevice->GetRemoteNode("UserSetSelector")->SetString("Default");
pDevice->GetRemoteNode("UserSetLoad")->Execute();

// CONFIGURING THE TRIGGER INPUT
pDevice->GetRemoteNode("TriggerMode")->SetString("On");
pDevice->GetRemoteNode("TriggerSource")->SetString("Line0");
pDevice->GetRemoteNode("TriggerActivation")->SetString("RisingEdge");
pDevice->GetRemoteNode("TriggerDelay")->SetDouble(0.0);
pDevice->GetRemoteNode("LineSelector")->SetString("Line0");
pDevice->GetRemoteNode("LineInverter")->SetBool(false);
pDevice->GetRemoteNode("LineDebouncerHighTimeAbs")->SetDouble(1.0);
pDevice->GetRemoteNode("LineDebouncerLowTimeAbs")->SetDouble(1.0);

// CONFIGURE GPIO “Line3” as an OUTPUT
pDevice->GetRemoteNode("LineSelector")->SetString("Line3");
pDevice->GetRemoteNode("LineInverter")->SetBool(false);
pDevice->GetRemoteNode("UserOutputSelector")->SetString("UserOutput1");
pDevice->GetRemoteNode("UserOutputValue")->SetBool(false);
pDevice->GetRemoteNode("LineSource")->SetString("UserOutput1");


// SWITCH TO SEQUENCER CONFIG MODE
pDevice->GetRemoteNode("SequencerConfigurationMode")->SetString("On");

// SET 0 (FIRST STEP OF THE SEQUENCE)
pDevice->GetRemoteNode("SequencerSetSelector")->SetInt(0);
pDevice->GetRemoteNode("SequencerSetLoad")->Execute();
pDevice->GetRemoteNode("TriggerMode")->SetString("On");
pDevice->GetRemoteNode("CounterSelector")->SetString("Counter1");
pDevice->GetRemoteNode("CounterEventSource")->SetString("Off");

// Set ExposureTime for Set0
pDevice->GetRemoteNode("ExposureTime")->SetDouble(15000.0); 
pDevice->GetRemoteNode("SequencerPathSelector")->SetInt(0);
pDevice->GetRemoteNode("SequencerTriggerSource")->SetString("ExposureActive");
pDevice->GetRemoteNode("SequencerTriggerActivation")->SetString("RisingEdge");
pDevice->GetRemoteNode("SequencerSetNext")->SetInt(1);
pDevice->GetRemoteNode("SequencerSetSave")->Execute();

// SET 1 (SECOND STEP OF THE SEQUENCE)
pDevice->GetRemoteNode("SequencerSetSelector")->SetInt(1);
pDevice->GetRemoteNode("SequencerSetLoad")->Execute();
pDevice->GetRemoteNode("TriggerMode")->SetString("Off");
pDevice->GetRemoteNode("CounterSelector")->SetString("Counter1");
pDevice->GetRemoteNode("CounterEventSource")->SetString("ExposureActive");
pDevice->GetRemoteNode("CounterEventActivation")->SetString("RisingEdge");
pDevice->GetRemoteNode("CounterDuration")->SetInt(2);
pDevice->GetRemoteNode("CounterResetSource")->SetString("Counter1End");
pDevice->GetRemoteNode("CounterResetActivation")->SetString("RisingEdge");

// Set ExposureTime for Set1
pDevice->GetRemoteNode("ExposureTime")->SetDouble(10000.0);
pDevice->GetRemoteNode("SequencerPathSelector")->SetInt(0);
pDevice->GetRemoteNode("SequencerTriggerSource")->SetString("Counter1End");
pDevice->GetRemoteNode("SequencerTriggerActivation")->SetString("RisingEdge");
pDevice->GetRemoteNode("SequencerSetNext")->SetInt(0);
pDevice->GetRemoteNode("SequencerSetSave")->Execute();
pDevice->GetRemoteNode("SequencerSetStart")->SetInt(0);

// SEQUENCER CONFIG END
pDevice->GetRemoteNode("SequencerConfigurationMode")->SetString("Off");

// START CAMERA SEQUENCER
pDevice->GetRemoteNode("SequencerMode")->SetString("On");
pDataStream->StartAcquisitionContinuous();
pDevice->GetRemoteNode("AcquisitionStart")->Execute();

// WAIT FOR TRIGGER TO CAPTURE THREE IMAGES

// STOP CAMERA SEQUENCER
pDevice->GetRemoteNode("AcquisitionStop")->Execute();
pDataStream->StopAcquisition();
pDevice->GetRemoteNode("SequencerMode")->SetString("Off"); 
  
    // STOP ACQUISITION AND LOAD DEFAULT PARAMETERS
mDevice.RemoteNodeList["AcquisitionStop"].Execute();
mDevice.RemoteNodeList["UserSetSelector"].Value = "Default";
mDevice.RemoteNodeList["UserSetLoad"].Execute();

// CONFIGURING THE TRIGGER INPUT
mDevice.RemoteNodeList["TriggerMode"].Value = "On";
mDevice.RemoteNodeList["TriggerSource"].Value = "Line0";
mDevice.RemoteNodeList["TriggerActivation"].Value = "RisingEdge";
mDevice.RemoteNodeList["TriggerDelay"].Value = (double)0.0;
mDevice.RemoteNodeList["LineSelector"].Value = "Line0";
mDevice.RemoteNodeList["LineInverter"].Value = false;
mDevice.RemoteNodeList["LineDebouncerHighTimeAbs"].Value = (double)1.0;
mDevice.RemoteNodeList["LineDebouncerLowTimeAbs"].Value = (double)1.0;

// CONFIGURE GPIO “Line3” as an OUTPUT 
mDevice.RemoteNodeList["LineSelector"].Value = "Line3";
mDevice.RemoteNodeList["LineInverter"].Value = false;
mDevice.RemoteNodeList["UserOutputSelector"].Value = "UserOutput1";
mDevice.RemoteNodeList["UserOutputValue"].Value = false;
mDevice.RemoteNodeList["LineSource"].Value = "UserOutput1";


// SWITCH TO SEQUENCER CONFIG MODE
mDevice.RemoteNodeList["SequencerConfigurationMode"].Value = "On";

// SET 0 (FIRST STEP OF THE SEQUENCE)
mDevice.RemoteNodeList["SequencerSetSelector"].Value = (long)0;
mDevice.RemoteNodeList["SequencerSetLoad"].Execute();
mDevice.RemoteNodeList["TriggerMode"].Value = "On";
mDevice.RemoteNodeList["CounterSelector"].Value = "Counter1";
mDevice.RemoteNodeList["CounterEventSource"].Value = "Off";

// Set ExposureTime for Set0
mDevice.RemoteNodeList["ExposureTime"].Value = (double)15000.0; 
mDevice.RemoteNodeList["SequencerPathSelector"].Value = (long)0;
mDevice.RemoteNodeList["SequencerTriggerSource"].Value = "ExposureActive";
mDevice.RemoteNodeList["SequencerTriggerActivation"].Value = "RisingEdge";
mDevice.RemoteNodeList["SequencerSetNext"].Value = (long)1;
mDevice.RemoteNodeList["SequencerSetSave"].Execute();

// SET 1 (SECOND STEP OF THE SEQUENCE)
mDevice.RemoteNodeList["SequencerSetSelector"].Value = (long)1;
mDevice.RemoteNodeList["SequencerSetLoad"].Execute();
mDevice.RemoteNodeList["TriggerMode"].Value = "Off";
mDevice.RemoteNodeList["CounterSelector"].Value = "Counter1";
mDevice.RemoteNodeList["CounterEventSource"].Value = "ExposureActive";
mDevice.RemoteNodeList["CounterEventActivation"].Value = "RisingEdge";
mDevice.RemoteNodeList["CounterDuration"].Value = (long)2;
mDevice.RemoteNodeList["CounterResetSource"].Value = "Counter1End";
mDevice.RemoteNodeList["CounterResetActivation"].Value = "RisingEdge";

// Set ExposureTime for Set1
mDevice.RemoteNodeList["ExposureTime"].Value = (double)10000.0; // 10 msec
mDevice.RemoteNodeList["SequencerPathSelector"].Value = (long)0;
mDevice.RemoteNodeList["SequencerTriggerSource"].Value = "Counter1End";
mDevice.RemoteNodeList["SequencerTriggerActivation"].Value = "RisingEdge";
mDevice.RemoteNodeList["SequencerSetNext"].Value = (long)0;
mDevice.RemoteNodeList["SequencerSetSave"].Execute();
mDevice.RemoteNodeList["SequencerSetStart"].Value = (long)0;

// SEQUENCER CONFIG END
mDevice.RemoteNodeList["SequencerConfigurationMode"].Value = "Off";

// START CAMERA SEQUENCER
mDevice.RemoteNodeList["SequencerMode"].Value = "On";
mDataStream.StartAcquisition();
mDevice.RemoteNodeList["AcquisitionStart"].Execute();

// WAIT FOR TRIGGER TO CAPTURE THREE IMAGES

// STOP CAMERA SEQUENCER
mDevice.RemoteNodeList["AcquisitionStop"].Execute();
mDataStream.StopAcquisition();
mDevice.RemoteNodeList["SequencerMode"].Value = "Off";
 
  

下載

軟件示例

回到頂部
主站蜘蛛池模板: 国产毛片一区二区三区精品| 手机国产精品一区二区| 国产在线观看a| 欧美日韩国产高清一区二区三区| 91精品国产乱码久久久久久| 日本与大黑人xxxx| 欧美黄色a| 被黑人操| 久久99热不卡精品免费观看| 色综合久久夜色精品国产| 久久精品福利视频在线观看| 亚洲成熟中国女人毛茸茸| 国产人妖一区二区| 国产精品你懂的在线播放调教| 国产午夜在线观看| 亚洲国产精品成人综合久久久| 91啦91pornv国产自| 久久久日韩精品国产成人| 日韩成人影院| 中国一级片| 欧美一级特黄真人毛片| 国产在线观看精品香蕉v区| 美女黄色免费在线观看| 国产精品视频免费| 精品久久免费视频| 麻豆视频在线免费看| 日韩欧美黄色| 最新国产精品亚洲| a黄色一级片| yjizz视频| 日韩免费在线视频| 正在播放的国产a一片| 亚洲第一页在线| 亚洲精品久久一区影院| 成人黄色片视频| 国产人成激情视频在线观看| 国产伦精品一区二区免费| 国产福利91精品一区二区| 国产精品短篇二区| 精品国产视频| 黑人破乌克兰美女处|