PCM开发板模块实验指导--触摸屏控制步进电机速度实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762
64---触摸屏控制步进电机速度实验:
硬件需求:PC机,PCM模块一个,microUSB线,5V/0.5A直流电源,12V/1A直流电
源,42步进电机1个,A4988步进电机驱动器一个,导线若干,24V电源一个,工 业触
摸屏(威纶MT506S)一个, TTL转RS232模块一个(或者使用MAX232芯片);
软件需求:PCM编译软件,触摸屏编辑软件(EB500),电脑端串口调试助手;
供电方式:12V电源供电给+5V电源,+5V电源输出的5V给PCM模块供电;
连接电路:如图101
图101 触摸屏控制步进电机速度实验电路
图102 触摸屏编辑软件界面截图
本实验使用stepruntospeed指令,使用触摸屏来控制马达的运行速度。
触摸屏有2个数值输入按键,一个是加减速时间输入按键,一个是最大速度输入
键;
4个数值显示元件,分别是马达当前速度,马达移动距离,马达运行状态,马达运
行方向;
1个切换开关运行,马达启动开关;
下表3列出了触摸屏元件地址对应表,图103至115为触摸屏编辑软件中对各个元件
设置的截图;
实验时,先设置好加减速时间和最大速度,然后按一下启动开关,马达就会加速到
设定的速度,期间改变速度,马达也会速度变化,速度为正值,马达正转,负值马达反
转。
名称 |
触摸屏元件 |
触摸屏设置地址 |
触摸屏设置字数 |
数值范围 |
小数点位数 |
对应开发板寄存器 |
加减速时间 |
数值输入元件 |
4x1 |
2 |
0-9999 |
1 |
D0 |
最大速度 |
数值输入元件 |
4x3 |
2 |
-9999~9999 |
2 |
D1 |
马达当前速度 |
数值显示元件 |
3x15 |
2 |
-9999~9999 |
2 |
D7 |
马达移动距离 |
数值显示元件 |
3x17 |
2 |
-9999999~9999999 |
0 |
D8 |
马达运行状态 |
数值显示元件 |
3x19 |
2 |
0-9999 |
0 |
D9 |
马达运行方向 |
数值显示元件 |
3x21 |
2 |
0-9999 |
0 |
D10 |
马达启动 |
切换开关元件 |
0x33 |
M0 |
表3 触摸屏元件地址设置列表
图103 触摸屏加减速时间输入元件地址设置界面,对应开发板整数寄存器D0
图104 触摸屏加减速时间输入元件数值显示界面,对应开发板整数寄存器D0
图105 触摸屏马达最大速度输入元件地址设置界面,对应开发板整数寄存器D1
图106 触摸屏马达最大速度输入元件数值显示界面,对应开发板整数寄存器D1
图107 触摸屏马达当前速度显示元件地址设置界面,对应开发板整数寄存器D7
图108 触摸屏马达当前速度显示元件数值显示界面,对应开发板整数寄存器D7
图109 触摸屏马达移动距离显示元件地址设置界面,对应开发板整数寄存器D8
图110 触摸屏马达移动距离显示元件数值显示界面,对应开发板整数寄存器D8
图111 触摸屏马达运行状态显示元件地址设置界面,对应开发板整数寄存器D9
图112 触摸屏马达运行状态显示元件数值显示界面,对应开发板整数寄存器D9
图113 触摸屏马达运行方向显示元件地址设置界面,对应开发板整数寄存器D10
图114 触摸屏马达运行方向显示元件数值显示界面,对应开发板整数寄存器D10
图115 触摸屏马达启动切换开关设置界面,对应中间寄存器M0
实验程序如下:
1 main
2 modbusrtuc 0 2 115200 s0 //初始化为从模式,本机站号0,使用串口2,
//波特率115200
//步进马达初始化0通道,电机转一圈3200个脉冲,步进马达运行停止后会置位Sn
3 stepinit 0 3200 s1
4 mov 1 f20 //F20=1,加减速时间1S
5 mov 1.5 f21 //F21=1.5,最大速度1.5弧度每秒
6 reset m0 //m0=0,此中间寄存器对应触摸屏的启动停止按键
7 reset m1 //m1=0
8 while 1 //无限循环
9 if m0 //如果m0=1,表示马达启动
10 if m1 //m1=1,表示马达正在运行
11 if d0 != d100 //加减速时间有改变
12 mov d0 f19 //整数转换成浮点数,D0对应触摸屏的
// 加减速时间输入按键,1位小数精度
13 div f19 10 f20 //除以10,为马达的加减速时间
14 mov d0 d100 //保存加减速时间到D100
15 endif
16 if d1 != d101 //速度有改变
17 mov d1 f19 //整数转换成浮点数,D1对应触摸屏的速度输入
//按键,2位小数精度
18 div f19 100 f21 //除以100,为马达的速度
//通道0步进电机改变速度,f20为加减时间,f21是速度,
19 stepruntospeed 0 f20 f21
20 mov d1 d101 //保存速度到D101
21 endif
22 else //m1=0,表示马达还未启动,准备启动马达
23 mov d0 f19 //整数转换成浮点数,D0对应触摸屏的加减速时间
//输入按键,1位小数精度
24 div f19 10 f20 //除以10,为马达的加减速时间
25 mov d1 f19 //整数转换成浮点数,D1对应触摸屏的速度输入
//按键,2位小数精度
26 div f19 100 f21 //除以100,为马达的速度
//通道0步进电机改变速度,f20为加减时间,f21是速度,
27 stepruntospeed 0 f20 f21
28 set m1 //m1=1,马达已启动
29 mov d0 d100 //保存加减速时间到D100
30 mov d1 d101 //保存速度到D101
31 endif
32 else //如果m0=0,马达停止
33 if m1 //如果m1=1,马达正在运行,要停止马达
34 mov d0 f19 //整数转换成浮点数,D0对应触摸屏的加减速时间
//输入按键,1位小数精度
35 div f19 10 f20 //除以10,为马达的加减速时间
36 mov 0 f21 //f21=0,设置马达速度为0,即停止马达
//通道0步进电机改变速度,f20为加减速时间,f21是速度,为0表示减速停止
37 stepruntospeed 0 f20 f21
38 reset m1 //m1=0,马达停止
39 endif
40 endif
41 stepgetspeed 0 f18 //获取马达速度到F18
42 mul f18 100 f19 //马达速度是2位精度,乘以100
43 mov f19 d7 //浮点数转换成整数,保存到D7,D7对应触摸屏的当前
//速度显示元件
44 stepgetdist 0 D8 //获取马达位置到D8
//获取马达运行状态到D9,0表示停止;1表示加速;2表示减速;3表示恒速运行,
//D9对应触摸屏的马达状态显示元件;
45 stepgetstate 0 D9
//获取马达运行方向到D10,0表示正转;1表示反转,D10对应触摸屏的马达运行
//方向显示元件
46 stepgetdir 0 D10
47 endwhile
48 endmain
程序中第2行,初始化modbus rtu为从模式,本机站号为0,使用串口2,波特率
115200;
第3-7行,初始化步进马达,初始化加减速时间为1秒,初始化最大速度为1.5弧度每
秒,复位马达启动标志位,复位马达运行标志位;
第8-47行,为无限循环体;
第9-15行,如果马达已启动,并且马达正在运行,并且加减速时间有被触摸屏修
改,就把加减速时间保存到寄存器F20;
第16-21行,如果马达已启动,并且马达正在运行,并且速度有被触摸屏修改,就
使用stepruntospeed指令改变马达速度;
第22-31行,如果马达已启动,但马达还没开始运行,马上启动马达,即第一次启
动马达;
第32-40行,如果m0为0,表示马达未启动,或者触摸屏按下停止按钮,判断马达
运行标志M1,如果M1为1,表示马达正在运行,使用stepruntospeed指令指定速度为
0,就可以停止马达;
下图116为触摸屏运行时的界面。
图116 触摸屏运行界面
PCM开发板模块实验指导--触摸屏控制步进电机速度实验相关推荐
- PCM开发板模块实验指导--触摸屏控制步进电机位置实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762 65---触摸屏控制步进电机位置实验: ...
- PCM开发板模块实验指导--IIC主从实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762 25---IIC主读写固定寄存器地址实验: ...
- PCM开发板模块实验指导--有刷直流马达速度位置控制实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762 44---有刷直流马达速度位置控制实验: ...
- PCM开发板模块实验指导--有刷直流马达速度控制实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762 43---有刷直流马达速度控制实验: ...
- PCM开发板模块实验指导--有刷直流马达正反转实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762 42---有刷直流马达正反转实验: ...
- PCM开发板模块实验指导--SPI读写PSRAM64实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762 32---SPI读写PSRAM64实验实验: ...
- 8255交通灯实验的微型计算机,微机原理实验四实验报告8255控制交通灯实验
<微机原理实验四实验报告8255控制交通灯实验>由会员分享,可在线阅读,更多相关<微机原理实验四实验报告8255控制交通灯实验(4页珍藏版)>请在人人文库网上搜索. 1.实验四 ...
- 定时器循环彩灯实验c语言,单片机实验6__定时器控制循环彩灯实验.doc
华 南 农 业 大 学 实 验 报 告 专业班次 08电信1 组别 200831120102 题目 实验六 定时器控制循环彩灯 姓 名 陈 建 泽 日期 2010.11.4 一.实验目的 1.学习89 ...
- 定时器实验循环彩灯C语言,单片机实验6__定时器控制循环彩灯实验.doc
华 南 农 业 大 学 实 验 报 告 专业班次 08电信1 组别 200831120102 题目 实验六 定时器控制循环彩灯 姓 名 陈 建 泽 日期 2010.11.4 一.实验目的 1.学习89 ...
最新文章
- git原理及常见使用方法
- Python操纵Mysql数据库的三种方法,实现增删改查
- 全球及中国球形活性炭行业十四五发展潜力及投资价值分析报告2022-2027年
- 2020-12-22 一些有用的开源软件
- 搭建VS2008下QT开发环境
- [xshell] xshell 及 xftp 官网无法下载解决
- 通达信交易接口分时做T的指标公式分享
- “智慧零售”下的信息化会员营销
- PR菜鸟教程:如何剪切掉其中不需要的片段
- 小米手机android程序闪退,小米手机软件闪退是什么原因
- [转载] C#开发实战1200例(第I卷)目录
- 开心下单助手v1.0免费版
- 对结构体数组数组进行赋值
- 头歌实训平台C语言答案
- 弱小和无知不是生存的障碍,傲慢才是
- iOS LeetCode ☞ Fizz Buzz
- 服务器虚拟化种类,服务器虚拟化的种类
- 小明Q2投影仪好用吗?小明Q2和哈趣K1哪个更值得入手?
- VB编程:Timer控件实例幼儿识字卡片-35_彭世瑜_新浪博客
- 网络基础知识学习笔记