串口 发送 接收 高位_电工进阶PLC大神,必备PLC串口通讯的基本知识!

串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线Universal Serial Bus或者USB混淆)。
大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;
很多GPIB兼容的设备也带有RS- 232口。同时,串口通信协议也可以用于获取远程采集设备的数据。
串口通讯使用3根线完成:①地线,②发送,③接收。
由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。
串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配:
a,波特率:
这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。
例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。
通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通讯。
b,数据位:
这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、
7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。如果数据使用简单的文本(标准ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。
c,停止位:
用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。
d,奇偶校验位:
在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。
当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。
例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。
如果是奇校验,校验位位1,这样就有3个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。
这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或传输和接受的数据不同步。
a,什么是RS-232?
RS-232 (ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可用于许多用途,比如连接鼠标、打印机或者Modem,同时也可以接工业仪器仪表。用于驱动和连线的改进,实际应用中RS-232的传输长度或者速度常常超过标准的值。
RS-232只限于PC串口和设备间点对点的通信。RS- 232串口通信最远距离是50英尺。
b,什么是RS-422?
RS -422(EIA RS-422-A Standard)是Apple的Macintosh计算机的串口连接标准。
RS-422使用差分信号,RS-232使用非平衡参考地的信号。差分传输使用两根线发送和接收信号,对比RS-232,它能更好的抗噪声和有更远的传输距离。在工业环境中更好的抗噪性和更远的传输距离是一个很大的优点。
c,,什么是RS-485?
RS -485(EIA-485标准)是RS-422的改进,因为它增加了设备的个数,从10个增加到32个,同时定义了在最大设备个数情况下的电气特性,以保证足够的信号电压。
有了多个设备的能力,你可以使用一个单个RS-422口建立设备网络。出色抗噪和多设备能力,在工业应用中建立连向PC机的分布式设备网络、其他数据收集控制器、HMI或者其他操作时,串行连接会选择RS-485。
RS-485是RS-422的超集,因此所有的RS-422设备可以被RS-485控制。RS-485可以用超过4000英尺的线进行串行通行。
来源:网络
如何0基础学习PLC?
关注回复 “ 工控全套 ”
获取更多工控案例与电气软件大全!
想看更多精彩文章 涨知识~
赶紧 星标 置顶吧!

进阶,如何学S7-200SMART 模拟量应用!
实例讲解PLC故障排查及分析,这几招值得一学!
小白的技术难题总是得不到解决?工控大神给你3个建议!
第一次见用趣味图画讲解PLC中断,有点意思!
PLC几个常见问题解决方法,一般人不告诉他们!
【三菱FX5U PLC】几个简单案例,轻松搞懂计数器!
自制简易小电动机,人人都可学会哦!
「探秘」进阶,ABB机器人9大项目!
「免费抽」工控人专享,PLC爆款书籍资料!
温馨提示
如果你喜欢本文,请分享到朋友圈!
想要学习更多技能?,请点击「
相关文章:

HTTP请求时connectionRequestTimeout 、connectionTimeout、socketTimeout三个超时时间的含义...
1.connectionRequestTimout 指从连接池获取连接的timeout 2.connetionTimeout 指客户端和服务器建立连接的timeout, 就是http请求的三个阶段,一:建立连接;二:数据传送;三,断开连接。超时后会Con…

搜索引擎优化培训教程
很详细的搜索引擎优化培训教材 View more presentations from mysqlops 转载于:https://www.cnblogs.com/macleanoracle/archive/2013/03/19/2967982.html

C语言-扫雷游戏
头文件 #ifndef __MINE_H__ #define __MINE_H__#define LINE 10 #define LIST 10 #define ROWS 6 #define COWS 6int game(char UserBoard[LINE2][LIST2], char PlayerBoard[LINE][LIST]); void PrintBoard(char Playerboard[LINE][LIST]); void MineLay(char UserBoard[LINE …

PHP的命令行脚本调用
1.使用PHP命令调用php脚本接受键盘输入然后输出 1 <?php 2 fwrite(STDOUT, "Please input your name:\t"); 3 $name trim(fgets(STDIN)); 4 fwrite(STDOUT, Hello . $name); 5 ?> 2.使用PHP命令调用php脚本并接受参数 1 <?php2 if($ar…

控制输入框只能输入数字
1.将input的属性type改为number 2.这时的输入框会有小箭头, 去掉小箭头的方法,给input添加样式 input::-webkit-outer-spin-button,input::-webkit-inner-spin-button { -webkit-appearance: none;}input[type"number"] { -moz-appearan…
main函数参数,在VS中向命令行添加参数的方法
问题描述 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。 例…

2.monotouch 控件的使用
1.我们打开一个xib 右下角会看到如下图所示: 这一部分包含了界面和各种各样的控件。选取一个控件,使用鼠标拖动到界面上即可使用。 2.选中一个控件,该控件的相关信息会在右边进行显示。做出相关设置即可。 3.设置控件属性和绑定控件事件。 首…

python视频延迟严重_【Python】改善 VideoCapture 的影像延迟
许多的范例程序大多仅介绍该如何用 VideoCapture 撷取摄影机的画面,却没有充分说明其隐含的问题。以下示范一个最基本的影像撷取程序。# -*- coding: utf-8 -*-import cv2# ip camera 的撷取路径URL "rtsp://admin:admin192.168.1.1/video.h264"# 建立 V…

CentOS 6.0配置pptp ××× Client和Squid透明网关
目的: 构建一台单网卡Linux网关(透明代理),该网关拨入某海外服务器,客户端设定该网关后,网络出口则为海外服务器,实现加速访问一些网站的目的。 环境信息: 硬件:DELL机器…

mysql汉字转拼音函数
-- 创建汉字拼音对照临时表 CREATE TABLE IF NOT EXISTS t_base_pinyin (pin_yin_ varchar(255) CHARACTER SET gbk NOT NULL,code_ int(11) NOT NULL,PRIMARY KEY (code_) ) ENGINEInnoDB DEFAULT CHARSETlatin1;-- 插入数据 INSERT INTO t_base_pinyin (pin_yin_,code_) VAL…

数据挖掘的一些经典算法
数据挖掘能做以下七种不同事情(分析方法):数据挖掘能做以下七种不同事情 分类 (Classification) 估计(Estimation) 预测(Prediction) 相关性分组或关联规则(…

python cx oracle安装_python3.6的安装及cx_oracle安装
一、创建所需目录mkdir -p /home/用户名/software/python3.6.1mkdir -p /home/用户名/priv/bydmkdir -p /home/用户名/priv/byd/src/pythonmkdir -p /home/用户名/priv/byd/org二、修改byd目录的权限cd /home/用户名/priv/llchmod 777 byd/ll三、将安装包放到byd中,…

opencv 无法找到tbb_debug.dll
本人环境:vs 2010 在opencv(你的opencv install 路径)\build\common\tbb\ia32\vc10下,将tbb.dll 拷贝一份,改名为tbb_debug.dll. 并将此路径加入到系统环境变量中即可。转载于:https://blog.51cto.com/danielllf/871369

【天命奇御】成就进度62/71的通关攻略(1·开篇前言)
天命奇御于2018.8.9号在wegame上发售 先是一周目记录: 可以说一周目是熟悉最终boss技能后,靠技术过的...... 然后是二周目记录: 开篇前言: 转载于:https://www.cnblogs.com/wuduojia/p/9494700.html
使用git上传代码到github
1. github上创建项目 github是一个服务器托管商,我们写好的代码可以上传到github上面去 登录github的官方网站:http://github.com/ 注册一个自己的用户 新建一个项目,我这里有我自己的一个github账号,我直接登录上去了&am…

gpg加密命令 linux_用 PGP 保护代码完整性(五):将子密钥移到一个硬件设备中 | Linux 中国...
在这个系列教程中,将为你提供使用 PGP 和保护你的私钥的最佳体验。-- Konstantin Ryabitsev致谢译自 | linux.com 作者 | Konstantin Ryabitsev译者 | LCTT / qhwdw在这个系列教程中,将为你提供使用 PGP 和保护你的私钥的最佳体验。在本系列教程中&#…

在Android使用XML文件控制按钮文字在各种状态下的颜色
最近在项目中遇到新的需求,就是在按钮在选按的时候需要将文字变为白色,但android默认的按钮颜色为黑色,之前也没有考虑过类似的问题。 通过doc文档,发现按钮文字的处理方式和背景的处理方式很相似,同样可以用一份selec…

人人网 6.0 版申请页面随着滚动条拖动背景图片滚动出现的原理
第一步是考虑静态实现。整个页面分成几大块,比如: <div class"section" id"topic-a"></div> <div class"section" id"topic-b"></div> <div class"section" id"topi…

Python内部类,内部类调用外部类属性,方法
一 Python中内部类 典型定义: class MyOuter:age18def __init__(self,name):self.namenameclass MyInner:def __init__(self,inner_name):self.inner_nameinner_nameoutMyOuter(lqz) innerout.MyInner(lqz_inner) print(inner.inner_name) 二 内部类调用外部类的类属…

POJ 2528 Mayor's posters(线段树)
题目大意 贴海报。每张海报的高度都是一样的,唯独宽度不一样。每张海报只能占用整数倍的单位线段长度,贴了 n(n<10000) 张海报之后,有几张能够看见(有一个角能看见这张海报也算被看见了)?海报的宽度最大…

xmind 模板_xmind模板打包下载
500套xmind模板【分类整合】好东西分享啦!~百度网盘下载链接:https://pan.baidu.com/s/1pCf8aqM8R8m4U4oWZUfOUA提取码:xt1j 微云盘下载连接: https://share.weiyun.com/5c3vehsXMind中的思维导图结构包含一个中心根主题ÿ…
Pycharm的运行和简单调试
我这里已经简单的创建了一个文件,为了浅显易懂,这里程序写的比较简单 1. 运行程序 首先,找到编辑窗口上面有一个向下方向的灰色箭头,点击它 点击之后,选择第一个选项edit Configurations,然后在弹出…

为什么百度只收录我的网站首页?
在我们做SEO的时候,经常碰到一个常见的问题,百度只收录网站的首页或者是一夜之间网站的收录变成了只剩首页。出现这种情况的原因很多,我们需要去检查自己的问题,然后去解决,让自己的网站重新获得更多页面的收录&#x…

Python3.5 学习十二 数据库介绍
MYSQL介绍: 主流三种数据库:Oracle、Mysql、Sqlserver Mysql安装和启动: windows 1安装 2启动服务 3进入bin目录,打开命令行 4 mysqladmin -u root password ******* 设置密码 5 mysql -u root -p 使用密码登录 显示所有数据…
github上删除一个仓库
首先进入到你需要删除的仓库,在这个页面的左侧或者上部找到”settings”选项 点击进入”settings”,然后一直往下拉,直到看到一个红色的横条区域,下面有一个”Delet this respository”,点击删除即可

两个线程同时访问一个变量_百战程序员:Java多线程对象及变量的并发访问
在开发多线程程序时,如果每个多线程处理的事情都不一样,每个线程都互不相关,这样开发的过程就非常轻松。但是很多时候,多线程程序是需要同时访问同一个对象,或者变量的。这样,一个对象同时被多个线程访问&a…

AE 9.3代码 升级到AE10.0
下载的代码是AE 9.3,本机配置是AE 10.0 ,程序打不开,运行不了,提示找不到ESRI.ArcGIS.Controls.AxMapCongrol等等AE 控件。 具体解决方法: (1) 在引用中,重新添加ArcGIS引用…

mysql数据库主从同步过程详述(三)
续mysql数据库主从同步过程详述(二)在此说明下:在最后试验过程中,当查看从库状态的时候,IO_Running显示为no,从error_log中看到如下报错提示:120523 0:55:31 [Note] Slave I/O thread: connected to master rep192.168.1.5:3306, replication started in log mysql-bin.0000…

[No0000160]常用C# 正则表达式大全
正则表达式的本质是使用一系列特殊字符模式,来表示某一类字符串。正则表达式无疑是处理文本最有力的工具,而.NET提供的Regex类实现了验证正则表达式的方法。Regex 类表示不可变(只读)的正则表达式。它还包含各种静态方法ÿ…

在VS中,如何新建项目,如何添加类库
学习了C#基础后就自己做了一个小小的qq空间,感觉挺好的。之后,由于团队需要被分配到测试方面去了,虽然测试时会看C#代码,但终究不是自己写的,没有那种深究的热情,尽管师兄说,看代码是最快提升的…