如何在上位机上判断单片机的串口速率

如何在上位机上判断单片机的串口速率,第1张

1,你可以设计一个通讯协议,上位机发一条指令给下位机,下位机指定的内容给上位机。然后你上位机用不同的波特率发送这条指令,在什么样的波特率情况下接受到了回复,那么下位机的波特率就很明显了。

2,另外我记得我以前看到过在单片机里,可以在软件里面设置自动适应的波特率,就是上位机发送什么波特率下位机可以自动匹配。但是是那款单片机我就忘记了。

西门子PLC 采用高速计数器来接收轴运动输出的脉冲

文章目录

西门子PLC 采用高速计数器来接收轴运动输出的脉冲

前言

最近在学习西门子PLC的高速计数器指令和运动控制部分,是用运动控制轴输出 频率为10kHz,AB相正交信号的一万个脉冲信号 来让高速计数器接收,想记录一下自己的学习过程。

一、高速计数器

1.在高速计数器向导里可以选择采用那个计数器。

2.选择工作模式,由于我才用的是AB相正交,所以选择模式9

3. 配置高数计数器的子程序,配置当前值/预设值,计数方向和计数速率等参数

4.配置中断程序

5.当中断事件启动后,写中断程序。

6. 这里就是高速计数器接收的I/O口

还有一个要注意的是,在系统块里,要设置一下输入I/O口的频率

二、运动控制

1.运动控制向导

1.选择要使用的轴

2.选择测量系统,有相对脉冲和工程单位(由于我只要发送一万个脉冲,所以选择相对脉冲)

3. 配置输出脉冲的信号类型和极性

4.后面的配置按照自己的需求去选择,我这里只需要发送脉冲,所以直接跳到运动控制生成的子程序。

AXIS0_CTRL

AXIS0_GOTO

然后给输出模块供电,将Q0.0,Q0.2,连接到I0.0,I0.1 即可。

前言

最近在学习西门子PLC的高速计数器指令和运动控制部分,是用运动控制轴输出 频率为10kHz,AB相正交信号的一万个脉冲信号 来让高速计数器接收,想记录一下自己的学习过程。

一、高速计数器

关于高速计数器的介绍和原理可以去看西门子的开发手册和官方介绍,这里提供链接:高速计数器

在西门子的上位机中可以直接使用高速计数器向导来配置程序。

1.在高速计数器向导里可以选择采用那个计数器。

2.选择工作模式,由于我才用的是AB相正交,所以选择模式9

3. 配置高数计数器的子程序,配置当前值/预设值,计数方向和计数速率等参数

4.配置中断程序

5.当中断事件启动后,写中断程序。

6. 这里就是高速计数器接收的I/O口

还有一个要注意的是,在系统块里,要设置一下输入I/O口的频率

当程序都配置完成后,在西门子上位机里就会自动生成相应的代码。

可以在中断程序(Count_EQ0)中写自己想要添加的控制程序。

二、运动控制

关于运动控制,西门子PLC上位机中也有运动控制向导,可以直接是用运动控制向导来生成配置程序。

西门子官方运动控制

1.运动控制向导

1.选择要使用的轴

2.选择测量系统,有相对脉冲和工程单位(由于我只要发送一万个脉冲,所以选择相对脉冲)

3. 配置输出脉冲的信号类型和极性

4.后面的配置按照自己的需求去选择,我这里只需要发送脉冲,所以直接跳到运动控制生成的子程序。

生成的代码如下:

这里有生成很多子程序,主要用到的有AXIS0_CTRL和AXIS0_GOTO

这些子程序中CTRL要和其他子程序搭配起来用,CTRL必须要使用,重点来介绍一下AXIS0_CTRL和AXIS0_GOTO。

AXIS0_CTRL

启用和初始化运动轴,方法是自动命令运动轴每次 CPU 更改为 RUN 模式时加载组态/包络表。

MOD_EN 参数必须开启,才能启用其它运动控制子例程向运动轴发送命令。 如果 MOD_EN 参数关闭,运动轴会中止所有正在进行的命令;

Done 参数会在运动轴完成任何一个子例程时开启;

Error 参数存储该子程序运行时的错误代码;

C_Pos 参数表示运动轴的当前位置。 根据测量单位,该值是脉冲数 (DINT) 或工程单位数 (REAL);

C_Speed 参数提供运动轴的当前速度。 如果您针对脉冲组态运动轴的测量系统,C_Speed 是一个 DINT 数值,其中包含脉冲数/每秒。如果您针对工程单位组态测量系统,C_Speed 是一个 REAL 数值,其中包含选择的工程单位数/每秒 (REAL)。

C_Dir 参数表示电机的当前方向:信号状态 0 = 正向;信号状态 1 = 反向;

AXIS0_GOTO

命令运动轴转到所需位置

START 参数开启会向运动轴发出 GOTO 命令。 对于在 START 参数开启且运动轴当前不繁忙时执行的每次扫描,该子例程向运动轴发送一个 GOTO 命令。为了确保仅发送了一个 GOTO 命令,请使用边沿检测元素用脉冲方式开启 START 参数;

Pos 参数包含一个数值,指示要移动的位置(绝对移动)或要移动的距离(相对移动)。 根据所选的测量单位,该值是脉冲数 (DINT) 或工程单位数 (REAL);

Speed 参数确定该移动的最高速度。 根据所选的测量单位,该值是脉冲数/每秒 (DINT) 或工程单位数/每秒 (REAL);

Mode 参数选择移动的类型:

0:绝对位置

1:相对位置

2:单速连续正向旋转

3:单速连续反向旋转

Abort 参数启动会命令运动轴停止当前包络并减速,直至电机停止。

然后给输出模块供电,将Q0.0,Q0.2,连接到I0.0,I0.1 即可。

PLC

西门子

运动控制

高速计数器

这里的学生袜子,批发价,货到付款

精选推荐

广告

S7-1200-高速计数器应用(电机测速).pptx

53下载·0评论

2020年6月6日

tracepro应用实例详解_S7-1200PLC高速计数器的用法及应用实例详解

1407阅读·0评论·1点赞

2020年12月9日

编码器(高速计数器)的使用方法

1318阅读·0评论·1点赞

2022年9月9日

西门子200PTO脉冲输出程序示例

54下载·0评论

2018年12月12日

S7-200脉冲控制步进电机

104下载·8评论

2011年10月15日

西门子PLC-smart高速计数器

2302阅读·0评论·0点赞

2022年1月24日

微型双排小货车报价

精选推荐

广告

西门子PLC方波脉冲输出库文件FB

0下载·0评论

2021年1月28日

西门子S7-200Smart学习记录——高频脉冲信号采集

4396阅读·1评论·3点赞

2021年7月13日

西门子1200高速脉冲计数器

70下载·2评论

2010年3月30日

S7-1200 PLC通过编码器实现高速计数器的测速功能

4239阅读·1评论·0点赞

2021年11月9日

西门子Smart 200 PLC 封装运动控制向导生成指令(脉冲)

1886阅读·1评论·3点赞

2021年11月20日

西门子S7-200之中断、高速计数器与高速脉冲输出

4908阅读·0评论·3点赞

2020年12月17日

S7-1200PLC 通过高速计数器测量AB相编码器转速

1.9W阅读·5评论·25点赞

2020年3月1日

getvalue参数计数不匹配_三菱FX 5U PLC高速计数器基础及模拟量

785阅读·0评论·0点赞

2020年11月4日

西门子SMART PLC高速脉冲计数采集编码器速度(RC滤波)

1109阅读·0评论·1点赞

单片机要用串口发送采集的温度。肯定是要增加串口通信程序的,首先要初始化串口,设置串口工作方式和波特率,必须与上机的波特率完全相同。再设定简单的通信协议,就是发送温度时,是以十六进制数发送,还是发送字符型,还是发送单片机转换后的十进制数,发送几个字节。单片机与上位机之间的通信要用一条USB转串口线,或USB转TTL模块,电脑上要安装驱动程序,虚拟出一个串口来。你的上位机的程序,可能需要做些修改,USB转串口虚拟串口号是多少,要根据安装驱动程序及USB线所插USB口确定。还有上面说的简单的通信协议,波特率都没有考虑吧,只是做了界面设计吧。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12086419.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存