返回HOME页 发新话题
打印

[原创] 为什么要用科威PLC芯片组进行客制式PLC的开发? (7)

为什么要用科威PLC芯片组进行客制式PLC的开发? (7)

实战开始,苦手对象:EASY-M0806R

首先,我们得搞清楚,EASY-M0806RIO引脚的分配情况,这款PLC8个输入点,6个输出点,那么就相应的有8+6 = 14IO引脚对应它们的输入和输出,对应原理图我们得知:
8个输入点对应的引脚是:
I0P3.7
I1
P3.6
I2
P3.5
I3
P3.4
I4
P3.3
I5
P3.2
I6
P3.1
I7
P3.0

6个输出点对应的引脚是:
OUT0P1.0
OUT1
P1.1
OUT2
P1.2
OUT3
P1.3
OUT4
P1.4
OUT5
P1.5

其次,每个输入输出点都对应一个LED,当输入输出点吸合的时候,对应的LED将被点亮,那么对应原理图我们得知14LED对应的引脚是:
ILED0P2.0
ILED1
P2.1
ILED2
P2.2
ILED3
P2.3
ILED4
P2.4
ILED5
P2.5
ILED6P2.6
ILED7
P2.7
OLED0P0.4
OLED1
P0.5
OLED2
P0.6
OLED3
P0.7
OLED4
P4.1
OLED5
P4.0

与此同时,PLC还有一个RUN/SET的输入,该输入负责管理PLC的运行状态和下载状态,对应着不同的状态,有一个专门LED点亮/熄灭来判断此输入的状态,一般来说,运行状态时,该LED被点亮,下载状态则反之。根据原理图我们得知:
RUN/SET-LEDP4.3

PLC如果错误的被执行,应该还有一个错误的LED将被点亮,这个LED对应的引脚为:
ERR-LEDP4.2
那么我们怎么得知PLC运行/下载的状态,还有出错的状态呢?请看easycore.inc文件,有3个变量定义:
KEY_SET

EQU
3FH

;1
有效(下载梯形图)
KEY_PRO

EQU
3EH

;0
有效(下载用户程序)
PLC_PRO_ERR
EQU
3DH

;
梯形图错误标志,1有效
这个是我们前几节所没有讲到的,通过检测这些位变量,我们就可以对RUN/SET-LEDERR-LED进行控制了。

知道了这些以后,我们就对EASY-M0806RIO引脚分配有了大致的了解,趁此机会,我们把easycore.inc最后剩下没讲完的变量也拉出来遛一下吧~
M0~M15:这16个字节变量可是直接寻址方式的哟,但是应用它们有个局限性,那就是必须得在SCAN里面应用,其他地方是不允许调用这16个字节变量的,如果你非要在其他地方使用,那么就必须得把它们压栈,不过还是不推荐此方法,真的要压栈的话,还不如压公共直接寻址变量区DRAM_USER区域呢。

FLOAT_M1~ FLOAT_M4W_R0~ W_R7W_DATA:这几个变量是专门调用easycore.lib函数库里面的函数所要用到的出口入口的变量。大致了解一下它们的含义便行,如果你到了需要调用easycore.lib函数库里面的函数这个阶段,那么本文对你来说,相信应该已经没有多大意义了^-^~!

下一讲我们将分模块来详细叙述如何根据我们所掌握的IO口引脚信息,来填充我们的驱动项目工程。

PS:本节所讲的IO口配置可能会与实际IO口配置略有出入,大家当以实际的原理图为准!

本帖首发中国工控网科威PLC论坛,转载请声明!

TOP

返回HOME页 发新话题
 
 

上海正航电子 | 51PLC技术网

 支持民族产业发展!