Show / Hide Table of Contents

函式庫使用方法


在函式庫中包含EthernetLightingController與Rs232LightingController類別,分別提供Ethernet與RS232通訊介面的控制器控制方法。

Warning

在使用以下功能前,務必確保PC端的設定已經穩當並將控制器改為外部設定,請參考文件通訊介面設定

EthernetLightingController與Rs232LightingController都繼承了ILightingController介面,此介面包含了以下功能:

  • Open(string host)
  • Close()
  • SendCommand(string command)
  • SetIntensity(int channel, int intensity)
  • SetIntensity(IChannelController channel, int intensity)
  • SetStrobeMode(int channel, StrobeModes mode)
  • SetStrobeMode(IChannelController channel, StrobeModes mode)
  • SetOnOff(int channel, bool mode)
  • SetOnOff(IChannelController channel, bool mode)
  • CheckSum(string command)

建立Controller

建立LightController有三種方法:

  1. 建立Rs232LightingController(RS232介面)
  2. 建立EthernetLightingController(Ethernet介面)
  3. 從LightingControllerProvider獲取

以VLP-2430-2控制器為例,以下將示範初始化控制器物件並設定:

ILightingController controller = new Rs232LightingController("VLP-2430-2", 2);
controller.Open("COM1");                    // 開啟通道
controller.SetIntensity(0, 255);            // 將channel 0的光源亮度值設為255
controller.SetStrobeMode(0, StrobeModes.F1) // 將channel 0的Strobe Mode設為F1
controller.SetOnOff(0, true);               // 將channel 0設為啟用

以VLP-2460-4eN控制器為例,以下將示範初始化控制器物件並設定:

ILightingController controller = new EthernetLightingController("VLP-2460-4eN", 4);
controller.Open("192.168.11.20");           // 開啟通道
controller.SetIntensity(0, 255);            // 將channel 0的光源亮度值設為255
controller.SetStrobeMode(0, StrobeModes.F1) // 將channel 0的Strobe Mode設為F1
controller.SetOnOff(0, true);               // 將channel 0設為啟用

函式庫內提供了LightingControllerProvider,可以直接透過型號取得控制器物件:

ILightingController controller = LightingControllerProvider.GetController("VLP-2460-4eN");
controller.Open("192.168.11.20");           // 開啟通道
controller.SetIntensity(0, 255);            // 將channel 0的光源亮度值設為255
controller.SetStrobeMode(0, StrobeModes.F1) // 將channel 0的Strobe Mode設為F1
controller.SetOnOff(0, true);               // 將channel 0設為啟用
Warning

在下SetIntensity指令後,亮度並不會立刻改變,更新的值會在下一次ON的時候改變,因此必須再下SetOnOff指令去更新控制器內部的參數。另外,也可以透過設定AutoUpdate這個屬性,讓更改完參數後自動更新控制器內部參數。

AutoUpdate屬性使用方法:

// AutoUpdate = false
controller.SetIntensity(0, 255);// 不會立刻更新亮度
controller.SetOnOff(0, true);// 重新啟動Channel並更新亮度
// Autoupdate = true
controller.AutoUpdate = true;
controller.SetIntensity(0, 255); // 設定新值後重新啟動Channel並更新亮度

Change IP

EthernetLightingController提供了改變控制器IP的方法,請參考以下程式碼:

EthernetLightingController controller = new EthernetLightingController("VLP-2460-4eN", 4);
controller.ChangeIP("192.168.11.21");        // 改變控制器IP

設定新IP後必續重新啟動控制器才會生效,重開控制器後必須要使用新的IP連入。

Tip

ChangeIP中的IP有嚴謹的規範,必須符合"192.168.11.xxx"的模板,xxx的部分為0~255。

  • Improve this Doc
Back to top Copyright © 2019 VST Taiwan Generated by DocFX