工控产品研发

 

梯形图转51单片机软件

PMW-HEX-V3.0 下载(免费,功能全开放)

 

 

基于STM32的兼容三菱软件PLC智能IO设置软件

PMW-STM32-V1.1 下载


本方案采用意法半导体的工业应用专业32位芯片STM32F103VCT6作为核心控制,单片机内部运行在72MHZ的频率保证PLC扫描速度高于原装三菱FX1N,多达8个16为定时器保证了高速脉冲输入输出部分与三菱FX1N PLC的兼容。
以下是支持的指令
基本指令:
LD LDI AND ANI OR ORI
LDP LDF ANDP ANDF ORP ORF
SET RST MPS MPP MRD ANB
ORB OUT INV PLS PLF MC
MCR NOP END CALL CJ FEND SRET
STL RET
功能指令:
ALT MOV ZRST ZCP INC DEC ADD CMP
SUB MUL DIV BCD BIN WAND WOR WXOR DECO ENCO REF
DHSCS DHSCR PWM RAMP PLSV DRVI DRVA
PLSY ZRN PLSR TCMP TZCP TADD TSUB HOUR TRD TWR
LD= <> <= >=
AND= <> <= >=
OR= <> <= >=
SFTR
SFTL
SPD
支持32位D指令,支持上升沿P指令
软件件范围
X0-X77
Y0-Y77
M0-M1535 M8000-M8255
S0-S999
C0-C255
T0-T255
D0-D5999
D8000-D8255
V0-V7 Z0-Z7
软元件掉电保持范围与三菱FX1N兼容
X0-X5高速脉冲捕捉功能与三菱FX1N兼容
Y0 Y1高速脉冲输出功能与三菱FX1N兼容,最高可发两路独立100K脉冲。
通信口
带一个RS232口(三菱FX协议),一个RS422或RS485口(支持三菱FX协议或MODBUS协议),均可用于下载梯形图或与各种触摸屏通信,
带一个CAN口,用于扩展模块。

下面是使用简易说明:试用版支持X0-X7 Y0-Y7 64步梯形图以内编程
一、 IO设置方法
1、 要先把软件目录下的STM32_PLC.HEX写进STM32芯片
2、插入加密狗打开PMW-STM32转换软件,然后下载IO定义进去,注意定义的信息字母都要大写,不能有空格。
3、最后就可以下载梯形图了,GX直接下载梯形图
4、不过每次上电后,要用转换软件激活一次PLC,否则超过64步的梯形图不能写进去
二、MODBUS说明
D8092=0时,串口2是三菱FX通信协议,D8092=1为MODBU-RTU通信协议;
D8093=0时,串口3是三菱FX通信协议,D8093=1为MODBU-RTU通信协议;
D8092 D8093需要PLC板有掉电保持功能才可以正常上电初始化,在PLC运行过程中修改D8092或D8093的值,可以修改串口通信协议。
做从站时候,目前只支持D元件的读写,D0-D5999对应的MODBUS地址是0-5999.,波特率可以设置,其他固定为8个数据位 无效验,一个停止位。
D8081=1时STM32串口2做主站,D8081=0时STM32串口2做从站(D8080是从站的站地址)
D8061=1时STM32串口3做主站,D8061=0时STM32串口3做从站(D8060是从站的站地址)

下面是STM32作为主站时候如何读写其他从站设备:
1、读从站(适用于串口2、串口3,但是时间上要分开读取,不能同时读;读一个串口时候,另一个串口设置为MODBUS从站)

MOV K5 D77 (只有最后一个参数为D77时)表示从地址=5的从站里读取元件地址为D76的内容的D73个寄存器,串口2读到数据存在主站的D80以后连续寄存器里,串口3读到数据存在主站的D60以后连续寄存器里。
MOV K8 D77 (只有最后一个参数为D77时)表示从地址=8的从站里读取元件地址为D76的内容的D73个寄存器,串口2读到数据存在主站的D80以后连续寄存器里,串口3读到数据存在主站的D60以后连续寄存器里。

读从站 主站的D76里存的是要读的元件地址
主站的D73存的是要读的元件个数
读到的数据,存在主站的D80开始的连续几个寄存器里


2、写从站(适用于串口2、串口3,但是时间上要分开写,不能同时写;写一个串口时候,另一个串口设置为MOBUS从站)

MOV K5 D79 (只有最后一个参数为D79时)表示向地址=5的从站里元件地址为D75的内容,写入主站D200以后的D74个寄存器的值;

MOV K2 D79 (只有最后一个参数为D79时)表示向地址=2的从站里元件地址为D75的内容,写入主站D200以后D74个寄存器的值;

写从站, 主站的D75存的是要写的从站里的元件的起始地址
主站的D200开始的几个寄存器的值要传送到从站去写
寄存器个数存在主站的D74里

三、 CAN组网说明
CAN匹配电阻必须是120欧姆,组网后总线并联电阻是60欧姆,网络中只需要两个CAN站点需要匹配电阻;
CAN波特率250K,软件目录下有CAN多机联网GX例程。
D8100 主机时是数据包个数 或 从机时是从机地址
D8101 从机个数
D8103 1为主机/0为从机
D5800-5819 设为主机时 用来存放与之联机的从机地址 从机地址必须是16的倍数 传递的数据一个数据包4个D,最多8个数据包32个D

D8100 D8101 D8103这些数据MOV进去后,PLC要重启才生效
主机D与从机D映射关系:

主机的D1000-D1031 写到 从机(地址0)的D2000-D2031

主机的D1050-D1081 写到 从机(地址16)的D2000-D2031

主机的D1100-D1131 写到 从机(地址32)的D2000-D2031

主机的D1150-D1181 写到 从机(地址48)的D2000-D2031

以此类推递增50

最多20个从机

从机(地址0) 的D1000-D1031 写到 主机的D2000-D2031

从机(地址16)的D1000-D1031 写到 主机的D2050-D2081

从机(地址32)的D1000-D1031 写到 主机的D2100-D2131

从机(地址48)的D1000-D1031 写到 主机的D2150-D2181

以此类推递增50
四、 高速输入与输出
高速输出固定为Y0 PA2 Y1 PC8,否则就没有高速脉冲输出功能

高速输入计数功能必须满足X0 PA0 X1 同时连PA1和 PA12 X2 PC5 X3 PC6
X4 PC7 X5 PC4,否则X0-X5都没有高速计数功能。

五、 模拟量输入输出定义
软件界面上,ADC0-ADC15读到的AD值存在D5000-D5015里,DMA自动读取30次,取平均值,不占用CPU资源。由于很多X Y高速口与AD输入口冲突了,不能同时使用,所以定义AD口的时候要适当取舍,理论上最多16路AD输入,实际考虑高速X Y要用到一些IO,会少几路AD输入。

DA输出只有两路,PA4 PA5,这个要注意的是这两个IO也可做AD输入,所以定义的时候只能定义一边使用,不可冲突。DA0 对应D5100,DA1对应D5101.

AD DA都是12位精度的,数值范围0-4095 对应电压0-3.3V。

为了提高精度,模拟量的参考电压脚可以外接精密电压源,比如REF3133芯片输出的3.3V电压。

六、TM1638数码管

TM1638使用说明

D5110-D5117对应8个数码管的显示数值
例如 D5110=0 数码管0显示0, D5110=9 显示9,D5110=10 显示A,D5110=15 显示F
D5111=0 数码管1显示0, D5111=9 显示9,D5111=10 显示A,D5111=15 显示F

D5120-D5127控制8个数码管亮灭

例如 D5120=1 数码管0亮,D5120=0 数码管0灭
D5127=1 数码管7亮,D5127=0 数码管7灭

D5130-D5137控制8个数码管的小数点

例如 D5130=1 数码管0的小数点亮,D5130=0 数码管0的小数点灭
D5137=1 数码管7的小数点亮,D5137=0 数码管7的小数点灭

D5140可以读取哪个按键被按下

七、MAX6675热电偶芯片
读取的温度保存在D5016,只支持K型热电偶;需要读取多路热电偶,可以用两个Y输出点控制CD4052模拟开关切换读取,在梯形图里写切换程序。

八、DS18B20温度芯片
当M8090 ON的时候,会初始化一次DS18B20芯片,然后M8090自动OFF;
当M8091 ON的时候,读取温度存在D5020;
需要读取多路DS18B20,可以用两个Y输出点控制CD4052模拟开关切换读取,在梯形图里写切换程序,切换后先初始化18B20再读取。

九、掉电保持原理
掉电保持是利用掉电检测IO检测到外部的24V电源断电,这时IO从低电平变为高电平,而STM32因为有5V电源处并的1F的法拉电容,还可以临时供电几秒,这时CPU把需要保持的数据写入FLASH永久保存,下次上电的时候再读到寄存器里。
这里掉电检测IO是必须定义的,具体参考软件目录下的原理图.

十、软件购买方式
软件需要购买专用的USB加密狗才可以无限制使用全部功能,购买地址如下:
淘宝链接 http://item.taobao.com/item.htm? ... 63N1&id=37053758887

MAIL:8451660@qq.com QQ:8451660 TEL:15980536982 开发者:叶工

技术网站:www.ourplc.com