PCM开发板模块实验指导--触摸屏控制步进电机位置实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762
65---触摸屏控制步进电机位置实验:
硬件需求:PC机,PCM模块一个,microUSB线,5V/0.5A直流电源,12V/1A直流电
源,42步进电机1个,A4988步进电机驱动器一个,导线若干,24V电源一个,工 业触
摸屏(威纶MT506S)一个, TTL转RS232模块一个(或者使用MAX232芯片);
软件需求:PCM编译软件,触摸屏编辑软件(EB500),电脑端串口调试助手;
供电方式:12V电源供电给+5V电源,+5V电源输出的5V给PCM模块供电;
连接电路:如图101(触摸屏控制步进电机速度实验)
图117 触摸屏编辑软件界面截图
本实验使用steprundist指令,使用触摸屏来控制马达的运行位置。
触摸屏界面与触摸屏控制步进马达速度实验差别不大,但有几点差别:
1:多了一个移动距离输入按键;
2:最大速度范围是0到9999.99;
3:马达启动按键改为复归型按钮,也就是按下的时候输出1,放开之后变为0;
当使用steprundist指令使马达运行时,根据脉冲数的正负来确定马达的正反转,而
且脉冲数为相对脉冲数,即每次使用此指令启动马达,脉冲数都是从0开始计数,所以在
程序中使用了一个寄存器来保存马达当前的绝对位置。所以输入距离和显示距离都是绝
对位置脉冲数。
下表4列出了触摸屏元件地址对应表,图118至121为触摸屏编辑软件中对各个元件
设置的截图;
名称 |
触摸屏元件 |
触摸屏设置地址 |
触摸屏设置字数 |
数值范围 |
小数点位数 |
对应开发板寄存器 |
移动距离 |
数值输入元件 |
4x5 |
2 |
-9999999~9999999 |
0 |
D2 |
加减速时间 |
数值输入元件 |
4x1 |
2 |
0-9999 |
1 |
D0 |
最大速度 |
数值输入元件 |
4x3 |
2 |
0-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 |
表4 触摸屏元件地址设置列表
图118 触摸屏移动距离输入元件地址设置界面,对应开发板整数寄存器D2
图119 触摸屏移动距离输入元件数值显示界面,对应开发板整数寄存器D2
图120 触摸屏最大速度输入元件数值显示界面,对应开发板整数寄存器D1
图121 触摸屏启动按键位状态设置元件设置界面,对应开发板中间寄存器M0
实验程序如下:
1 main
2 modbusrtuc 0 2 115200 s0 //初始化为从模式,本机站号0,使用串口2,
//波特率115200
//步进马达初始化0通道,电机转一圈3200个脉冲,步进马达运行停止后会置位Sn
3 stepinit 0 3200 s1
4 reset m0 //m0=0,此中间寄存器对应触摸屏的启动按键
5 while 1 //无限循环
6 if m0 //如果m0=1,表示马达启动
7 mov d0 f19 //整数转换成浮点数,D0对应触摸屏的加减速时间输入
//按键,1位小数精度
8 div f19 10 f20 //除以10,为马达的加减速时间
9 mov d1 f19 //整数转换成浮点数,D1对应触摸屏的速度输入按键,
//2位小数精度
10 div f19 100 f21 //除以100,为马达的速度
11 sub d2 d8 d101 //设定位置减去当前位置,为马达要走的脉冲数,
//保存到D101启动通道0步进电机,d101为脉冲数,
//正表示正转,负表示反转,f20为
//加减速时间,f21是最大速度,F10保存马达运行D2个脉冲需要的时间,单位S;
12 steprundist 0 d101 f20 f21 f10
13 mov d8 d99 //把当前位置(绝对位置)保存到D99
14 reset m0 //清除m0,保证此段程序只运行一次
15 endif
16 stepgetspeed 0 f18 //获取马达速度到F18
17 mul f18 100 f19 //马达速度是2位精度,乘以100
18 mov f19 d7 //浮点数转换成整数,保存到D7,D7对应触摸屏的当前速度
//显示元件
19 stepgetdist 0 D100 //获取马达移动脉冲数到D100
20 add d100 d99 d8 //马达移动的脉冲数加上上次的绝对位置,为当前
//绝对位置
//获取马达运行状态到D9,0表示停止;1表示加速;2表示减速;3表示恒速运行,
//D9对应触摸屏的马达状态显示元件;
21 stepgetstate 0 D9
//获取马达运行方向到D10,0表示正转;1表示反转,D10对应触摸屏的马达运行
//方向显示元件
22 stepgetdir 0 D10
23 endwhile
24 endmain
下图122为触摸屏运行时的界面。先设置好各个参数,按下马达启动按钮,马达就
会运行到设置的距离停止。
图122 触摸屏真实界面
PCM开发板模块实验指导--触摸屏控制步进电机位置实验相关推荐
- PCM开发板模块实验指导--触摸屏控制步进电机速度实验
模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762 64---触摸屏控制步进电机速度实验: ...
- 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 ...
最新文章
- Win10系列:VC++调用自定义组件1
- 2021年,深度学习还有哪些未饱和、有潜力且处于上升期的研究方向?
- piwik的安装与配置
- Xamarin XAML语言教程基本页面ContentPage占用面积
- 《openssl 编程》之 RSA(转)
- 人工智能芯片设计pdf_在芯片设计中引入人工智能
- [vue]vue渲染模板时怎么保留模板中的HTML注释呢?
- 工作208:element $message居中测试无法实现
- 源码 状态机_LLVM学习笔记(1)--初探源码
- 使用generator自动生成mybatis model、mapper.xml、mapper等(转)
- oracle的exp程序,数据库expimp迁移的整个过程,及注意事项
- CS224N笔记——RNN和语言模型
- Android Bitmap缓存池使用详解
- esp8266 继电器接线图_如何使用ESP8266和Android控制继电器
- 将MP4视频和MP4音频合并成MP4文件
- 目标追踪(一)环境搭建
- 学了C语言想装x能干点啥?手把手教你写个聊天软件来玩玩
- goldendict无法导入字典
- 在北京租房都多交两个月的房租吗?怎么不通过中介找到合意的房子?
- B站纪录片发布会,发布的不只是纪录片