首页> 中国专利> 用于单片机的可编程逻辑控制系统的编程设计方法

用于单片机的可编程逻辑控制系统的编程设计方法

摘要

一种用于单片机的可编程逻辑控制系统的编程设计方法,包括步骤:准备一个装有逻辑控制程序设计软件的开发平台和装有可运行“逻辑控制程序”的控制器;确定控制逻辑的逻辑输入向量、逻辑输出向量、定时输入向量等;设计逻辑关系表达式;将逻辑关系表达式转换成标准“与或”式;根据标准“与或”式,设计“与”矩阵、“或”矩阵、“非”矩阵;将设计出的控制矩阵通过控制器通讯接口,传输到控制器。本发明无需操作系统支持,无需解释型语言支持,对硬件资源要求极低,是适合普通单片机的逻辑可编程技术,将大大降低单个控制器的成本,代码可移植,运行速度快,容易扩展成多个控制器的协同控制系统。

著录项

  • 公开/公告号CN105824285A

    专利类型发明专利

  • 公开/公告日2016-08-03

    原文格式PDF

  • 申请/专利权人 上海交通大学;

    申请/专利号CN201610142839.8

  • 发明设计人 赵春宇;朱成刚;喻志成;

    申请日2016-03-14

  • 分类号

  • 代理机构上海新天专利代理有限公司;

  • 代理人张宁展

  • 地址 200240 上海市闵行区东川路800号

  • 入库时间 2023-06-19 00:11:02

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-03-03

    未缴年费专利权终止 IPC(主分类):G05B19/05 专利号:ZL2016101428398 申请日:20160314 授权公告日:20180914

    专利权的终止

  • 2018-09-14

    授权

    授权

  • 2016-08-31

    实质审查的生效 IPC(主分类):G05B19/05 申请日:20160314

    实质审查的生效

  • 2016-08-03

    公开

    公开

说明书

技术领域

本发明涉及单片机编程,特别是一种用于普通单片机的可编程逻辑控制系 统的编程设计方法。

背景技术

工业用可编程逻辑控制器(简称为PLC)自出现以来,发展迅速,在工业 控制系统中广泛应用。用于功能强大,可靠性高,通用性强,通常具有大量的输 入输出接口,连接各种传感器和控制器,而PLC内通常采用强大的单片机,具 有足够多的内存和外围电路,PLC支持多种编程方式,可以实现复杂的逻辑控制, 因此,通常工业PLC的成本较高、体积较大,适合作为主控制器。

由于物联网技术的兴起,在智慧农业、智能交通、智能建筑、智能家居等 网络环境下需要配置大量的传感器和控制器,因此对这些装置的体积、成本、功 耗都提出要求,这些传感器、控制器的分布,相对于工业控制系统来说,更加分 散,但控制逻辑比较简单,对控制器的体积、功耗和成本提出较高的要求;而真 正的分布式控制系统往往对主控制器要求很低,而更多的是将控制功能下放到底 层的节点,这样一来功能强大的集中控制的PLC就不能适应市场需求了;同时 这种分布式控制系统,对每个底层的设备提出了控制逻辑可编程的需求。

常规单片机的程序一般服务于一种特定功能,改变程序功能,目前通常用 三种方法:

1、采用专用编程工具,由专业人员重新设计源代码,经过编译后,使用专 用开发工具下载到单片机;

2、在单片机的存储器中设置很多可修改的参数,这样单片机的程序不变, 但可以通过修改参数,一定程度上可修改单片机系统的功能;

3、采用解释型语言的方法,开发人员在电脑上完成解释型语言的编程后, 将代码发给单片机,运行时,由单片机逐条解释运行,这种方式需要单片机中有 相应的代码解释程序,PLC多采用这种方式。

第一种方法的缺点是非专业的人员难以使用,且需要对软硬件系统非常熟 悉开发人员才能胜任;第二种方法的缺点是程序功能可修改的范围很小,仅适合 功能相对固定控制器,无法做到通用;第三种方法的缺点是对单片机要求较高, 需要一定的运算速度和大量存储空间,且代码运行效率较低,所以,通常的PLC 指令执行周期是20毫秒。

因此,如果有一种无需操作系统支持,无需解释型语言支持,对硬件资源 要求极低的,适合普通单片机的逻辑可编程技术,将大大降低单个控制器的成本, 为物联网的普及创造更加有利的条件。

发明内容

本发明针对上述现有技术的不足和现实需求,提出一种用于普通单片机的可 编程逻辑控制系统的编程设计方法,该方法,不需要专业的嵌入式系统开发经验, 即可进行编程;而且下载到单片机内的用户代码,仅需通过通讯接口,不需要专 门的编程接口;下载到单片机的代码可以被立即执行,不需重新启动;用户代码 执行速度非常快,小于200微秒,远快于普通PLC的20毫秒;用户代码不依赖 于单片机,可以在不同的单片机上运行,具有可移植性;用户代码的执行程序简 短,仅占用很少的资源。

本发明中控制器输入向量由控制器输入引脚信号组成;远程输入向量由其他 控制器通过通讯接口传输到本控制器的信号组成;定时输出向量,由控制器内定 时程序控制,其每个信号的定时常数存储在“定时常数矩阵”内,控制器定时程序, 检测每个定时输入条件,当由0变为1时,启动定时,计数到定时常数时,输出 由假变为真;软件控制向量由控制器其他软件部分输出的控制信号组成;控制器 输出向量每个成员用于直接连接控制器信号输出电路;远程输出向量的每个成员, 可将该信号通过通讯接口发送给其它控制器;软件输出向量用于将运算的结果发 送给本控制器软件的其他部分。

本发明用到了多个矩阵,其中“与矩阵”的作用是根据“与或”标准式最小与项, 选择“逻辑输入向量”的成员或其成员的“非”,进行“与”运算;“或矩阵”的作用是 根据“与或”标准式各项,选择“与项向量”的成员,进行“或”运算;“非矩阵”的作 用是根据需要,选择“或项向量”的成员,进行“非”运算。

由于是逻辑运算所有的矩阵和向量成员都是布尔变量,因此可以用BYTE或 整型来存储多个变量,而向量或矩阵的运算,可以借助单片机的逻辑运算功能完 成,这样既可以同时实现多个布尔变量的并行计算,大大提高运算速度。

本发明应用于可编程逻辑控制系统。可编程逻辑控制系统如图6所示:系统 由若干个可编程控制器联网组成,每个可编程控制器有n(n.≥0)个控制器输入端 口和m(m.≥0)个控制器输出端口。这些控制器通过通讯接口连接在一起,每个 控制器的输出端口的状态是由控制器自身的输入端口的状态、其他控制器输入或 输出端口状态及一些其他状态变量的逻辑表达式决定;这些端口的状态可用0|1 的逻辑符号表示。为了方便表述和计算,我们将n个输入端口的状态用控制器输 入向量表述,将m个输出端口的状态用控制器输出向量描述,其它的向量的概 念也是类似的含义。图6中显示的是3个具有2个控制器输入端口和2个控制器 输出端口的可编程逻辑控制系统,每个控制器输入端口连接一个开关,每个输出 端口连接一个指示灯,根据本发明,只要向控制器下载对应的用本方法设计的“程 序”,即可让每个灯的亮灭由控制器输入向量的逻辑组合来控制。

本发明的“程序开发”是通过如下步骤实现的:

步骤一:准备一个装有逻辑控制程序设计软件的开发平台(如计算机或手机等) 和一个以上装有可运行“逻辑控制程序”的控制器。

步骤二:确定控制逻辑的逻辑输入向量和逻辑输出向量及定时输入向量,

设计逻辑输入映射矩阵选择控制器输入向量、远程输入向量、定时输出向量、 软件控制向量、逻辑输出向量的一部分成员组成逻辑输入向量;

设计逻辑输出映射矩阵用于将逻辑输出向量复制给部分控制器输出向量、远 程输出向量、软件输出向量的一部分成员。

设计定时输入映射矩阵以选择控制器输入向量、远程输入向量、软件控制向 量、逻辑输出向量的一部分成员组成定时输入向量;

再设计定时常数矩阵,确定每个定时器的延时时间;

步骤三:根据要实现的控制器功能,设计逻辑输入向量与逻辑输出向量的逻辑关 系表达式;

步骤四:将逻辑关系表达式转换成标准“与或”式:根据数学原理,所有逻辑控 制可以用逻辑表达式描述,并都可以简化成“与或”标准式;

步骤五:根据“与或”标准式中各“与”项,设计“与”矩阵;根据“或”运算, 设计“或”矩阵;再根据输出要求,设计“非”矩阵;

步骤六:将设计出的“逻辑控制程序”,即:“与矩阵”、“或矩阵”、“非矩阵”、“逻 辑输入映射矩阵”、“逻辑输出映射矩阵”、“定时常数矩阵”、“定时输入映射矩阵” 等数据,通过控制器通讯接口或其他转存设备,传输到控制器。

本发明的控制器中“逻辑控制程序”按照如下流程运行:

步骤一:同步锁存控制器输入向量、远程输入向量、定时输出向量、软件控制向 量、逻辑输出向量的当前值,根据逻辑输入映射矩阵将选择的变量,复制给逻辑 输入向量。

步骤二:逻辑输入向量和“与矩阵”,经过逻辑运算,得到标准“与或式”的各最小 “与项”,从而得到“与项向量”;

步骤三:“与项向量”与“或矩阵”经过逻辑运算,得到标准“与或式”的“或项”,从 而得到“或项向量”;

步骤四:“或项向量”,经过与“非矩阵”的运算,得到逻辑输出向量。

步骤五:逻辑输出向量经过逻辑输出映射矩阵,将运算结果复制分别给控制器输 出向量、远程输出向量、软件输出向量,完成控制的一次运行。

本发明的有益效果在于:

1、根据逻辑控制设计“与或非”矩阵,比较直观,对于开发人员来说 无需编程基础;

2、根据本方法设计的“与或非”矩阵就是用户的“程序”,可以作为数 据下载到控制器中,无需修改控制器程序。

3、本方法设计的“程序”与采用的单片机无关,与操作系统也无关,便 于移植。

4、本方法设计的“程序”的执行过程,只有单纯的逻辑运算,低端的 单片机都能胜任。

5、本方法设计的“程序”,执行速度快,仅需几百个机器周期,而且复 杂“程序”和简单“程序”消耗同样的机器周期,“程序”执行时间可预期,便于精确的 时间控制。

6、由于采用矩阵运算的方式,所有输入端口、输出端口同时动作,无 需专门的同步指令。

7、本方法设计的“程序”,可以方便实现延时控制,可以方便地替代延 时继电器,实现具有延时功能的逻辑控制。

8、本方法设计的“程序”还具有与其他控制器协同工作的能力,借助虚 拟输入端口和虚拟输出端口,可以和其他的控制器间自动传输数据。

9、对于单个控制器功能简单,而多个控制器间有复杂协同逻辑控制的 系统,本方法具有易于实现的优势,且实现成本更低。

附图说明

图1是控制逻辑编程流程图

图2是逻辑矩阵运算流程图

图3是输入映射矩阵的流程图

图4是定时矩阵工作流程图

图5是输出映射矩阵的流程图

图6可编程逻辑控制系统

具体实施方式

下面结合附图和实施例对本发明作详细说明。

实施例

设计具有三个控制器A、B、C的系统,每个控制器有两个输入信号(分别 为Ai1,Ai2,Bi1,Bi2,Ci1,Ci2)、两个输出信号(Ao1,Ao2,Bo1,Bo2, Co1,Co2)、两个定时器(At1,At2,Bt1,Bt2,Ct1,Ct2)、两个远程输入信号 (Ar1,Ar2,Br1,Br2,Cr1,Cr2,两个远程输出信号(As1,As2,Bs1,Bs2, Cs1,Cs2),两个软件控制信号(Ac1,Ac2,Bc1,Bc2,Cc1,Cc2),两个软件 输出信号(Ad1,Ad2,Bd1,Bd2,Cd1,Cd2),

Co1控制逻辑是:Bo1控制逻辑是:定时器Bt1在Ai1为 “真”后经过时间T,输出“真”信号,且

考虑控制器B的“程序”的实现,按照本发明方法:

步骤1:准备一个装有逻辑控制程序设计软件的开发平台和装有可运行“逻 辑控制程序”的控制器B;

步骤2:确定控制器B的逻辑输入输出:控制器B的逻辑输入向量为{in1, in2,tm1},逻辑输出向量为{out1,out2},定时输入向量为{tm1,0};

因此输入映射矩阵为:

Aii=001000000010000000000000100000

输出映射矩阵为:

Aoi=010010000000

定时输入映射矩阵:

Ati=1000000000000000

定时常数矩阵:

Atc=T0

步骤3:设计逻辑关系表达式:

out1=in1+in2

out2=tm1in2

步骤4:化成“与或”标准式,

因此输入向量为:

Bin={Ai1,Bi1,Bt1}T

步骤5:设计控制矩阵:考虑到“与矩阵”还需要和逻辑输入向量“非”的运算,

因此:

Aand=110000010001001010

“或矩阵”为:

Aor=100011

“非矩阵”为:

Anot=10

步骤6:将设计出的“与矩阵”、“或矩阵”、“非矩阵”、“逻辑输入映射矩阵”、 “逻辑输出映射矩阵”、“定时常数矩阵”、“定时输入映射矩阵”通过控制器B的 通讯接口,传输到控制器B;

采用字节存储的方式,输入映射矩阵需要有6字节,输出映射矩阵需要2字 节,定时输入映射矩阵需要2字节,定时常数矩阵需要2字节;与矩阵需要3 字节,或矩阵需要2字节,非矩阵需要1字节,合计18字节,

上述“编程”过程中,步骤二、步骤三可采用图形化交互设计技术,方便快速 开发,步骤四、步骤五、步骤六可交由开发平台软件自动完成,这样可以简化“编 程”过程,提高效率。

控制器执行程序时,按照如下步骤进行:

步骤一、锁存控制器的输入向量

锁存远程输入向量

锁存定时输出向量

锁存软件控制向量

锁存逻辑输出向量

因此,可以得到逻辑输入向量:

Bin=Aii·{Bi,Br,Bt,Bc,Bo}T={Ai1,Bi1,Bt1}T

步骤二:计算“与项向量”:

特别的是,“与矩阵”中,值为“1”表示,成员参与“与”计算,为“0”表示不 参与“与”计算,因此实际计算中,需要做特别处理:

步骤三:计算“或项向量”

步骤四:计算逻辑输出向量

将需要逐项与Anot的对应成员异或;

Bout[n]=Anot[n]Bor[n]

于是:

步骤五:映射输出。

控制器输出向量

远程输出向量

软件输出向量

根据输出映射矩阵计算:

{Bo,Bs,Bd}T=Aoi·Bout

因此:

Bo={Bi1Bt1,0}T

Bs={Ai1+Bi1,0}T

的成员Bo1被直接赋值状态即刻发生变化;而的成员Bs1 状态通过通讯接口发送至对应控制器C后,将改变控制器C的Co1 引脚信号状态。

程序运行过程就是不断重复步骤一至步骤五。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解, 这些仅是举例说明,在不背离本发明的原理和实质的前提下,可以对这些实施方 式做出多种变更或修改。因此,本发明的保护范围由所附权利要求书限定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号