一.适用性
适用所有兼容.NET控件的上位组态软件。
二.功能简介
主要是利用控件外部属性接口获取上位组态软件例如WINCC中变量的值与名称,再调用电脑语音合成器进行语音播报。此次制作为了即时性采用沿触发方式而不是一直触发。
三.逻辑核心
这个简单控件没有复杂逻辑,只有一个沿触发的检测需要注意下,因为CSharp中没有类似我们平常使用的PLC里面的LDP/LDF上升沿下降沿,这些其实都是PLC厂家为了简化编程打包好的指令块而已。所以我们需要自己去写一个边缘检测的获取。很简单,准备一个实时数据集合与一个缓冲数据集合,两个集合进行比较即可。要在一次比较的进程开始前根据上升沿/下降沿的选择来初始化缓冲集合,在一次比较的进程末对缓冲集合进行更新。
四.控件布局
五.边缘检测代码
此处单独贴一下边缘检测的代码
按照我第三点写的步骤,进程前根据选择初始化:
public List alarmTagList;
public List AlarmTagList
{
get
{
return new List()
{
AlarmTag01, AlarmTag02, AlarmTag03, AlarmTag04, AlarmTag05, AlarmTag06, AlarmTag07, AlarmTag08,
AlarmTag09, AlarmTag10, AlarmTag11, AlarmTag12, AlarmTag13, AlarmTag14, AlarmTag15, AlarmTag16,
AlarmTag17, AlarmTag18, AlarmTag19, AlarmTag20
};
}
set
{
alarmTagList = value;
}