久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4757|回復: 0
打印 上一主題 下一主題
收起左側

精通RS485通訊系列教程_通訊基礎 <圖文詳解一>

[復制鏈接]
跳轉到指定樓層
樓主
ID:107189 發表于 2016-3-6 16:50 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
一、通訊基礎知識
1.1什么是通訊
要搞清楚RS485通訊我們要先搞明白什么是通訊,通訊就是兩個設備之間0、1代碼的傳遞,0-低電平1-高電平。
舉例:A設備向B設備傳遞數據,首先A設備和B設備之間必須通過電纜連接(硬件連接)。如果A設備要向B設備發送101010這樣一串代碼,那么A設備就要在他的通訊端口產生如下圖所示的高低電平的組合,通過電纜這個介質B設備的通訊端口就會接收到A設備發出高低電平的組合,同時就會將接收到的高低電平組合翻譯成101010,這就完成了A設備向B設備數據的傳遞,B設備向A設備數據傳遞也是同樣的道理。

與通訊有個的概念。
【全雙工與半雙工】全雙工是通訊端口在發送數據的同時可以接收數據。而半雙工指的是同一時刻通訊端口要么只能發送數據,要么只能接收數據。舉例:全雙工-打電話時雙方都可以說。半雙工:對講機-同一時刻只能一個人說另一個人聽。
【通訊速率】通訊速率也叫通訊波特率是1S內通訊端口發送01代碼(或者說是高低電平)的數量。舉例:我們說通訊速率是9.6kbps,就表示通訊端口每秒發送9600個bit的數據,也就是每秒可以產生9600個高低電平(注意:是高低電平總共加起來9600個)。
【主從通訊】是在一個通訊網絡中一個站點是主站,其他站點作為從站。主站和從站之間可以直接進行數據的傳遞,但是從站與從站之間不能直接進行數據的傳遞。如果需要從站之間交換數據也必須要通過主站進行轉發。如下圖所示

1.2、485通訊定義
明白了通訊的基本概念后再理解485通訊就相對容易了,下面我們從通訊介質、通訊方式、通訊類型、物理層四個方面來介紹485通訊。
通訊介質:屏蔽雙絞線,也就是我們通常用的帶有屏蔽層的兩心電纜如下圖所示。

通訊方式:半雙工
通訊類型:主從通訊
物理層:9針接口,需要注意的是通常情況下485通訊的9針接口,只需要將兩芯電纜接 到3號腳和8號腳上,3是信號“﹢”,8是信號“-”。如下圖


1.3通訊協議
問:你這個通訊用的是什么協議?
答:我這個是485協議、我這個是232協議”!!
這就是典型的把通訊協議和通訊物理層搞混了,舉例:還是打電話,電話是物理層,通話的人之間說的語言就是協議。同一個物理層可以傳輸不同的協議,就像電話兩邊的人既可以說中文也可以說英語。中文是一種協議,英文是另一種協議。485就好比是電話是物理層,在485這個物理層可以傳輸modbus協議,也可以傳送Profibus協議,這就是通訊協議和物理層之間的關系。
二、數據的發送
說到通訊大家都覺得很難,覺得學起來沒有頭緒。其實所有學習通訊的人,剛開始的時候也是這樣的感覺,資料找了一大堆都是理論,看來看去總感覺無從下手,最后終于搞懂后才發現,其實學不懂的主要原因并不應該用難來形容,而是這個東西它太復雜了,想要一次全部看懂消化是不太可能的事情,只有分步驟將這個復雜的知識一點點的進行拆分,循序漸進的進行理解,才能最終將這個復雜的知識掌握。
這里為了好理解咱們先動手做,在做的過程中逐步的理解理論。
2.1實驗工具
實例中所用到的學習工具,看完后大家可以找到這些東西自己親手做一遍。相信當你從電腦上看到PLC發出的數據時你會由衷的露出喜悅的笑容,不信試試··········
工具①、S7-200CPU 1個(型號無所謂,最好有兩個通訊口)



工具②、串口調試軟件(可以從網上任意下載一個使用,不一定是下圖所示)


工具③、Usb轉485轉換接頭1個(RS232轉RS485接頭也可)

4. 工具④、9針接頭公頭1個

工具⑤、兩芯電纜

2.2、實驗流程
實驗目的:從PLC向電腦發送一個字節的數據。
實驗操作:用S7-200PLC向電腦發送一個字節的數據,通過串口調試軟件接收。現在的電腦一般沒有RS485通訊接口,要使用Usb轉485轉換接頭才能保障電腦可以接收到來自PLC的數據,接線是要注意9針頭的3針腳接Usb轉485接頭的信號“+”,8針腳接Usb轉485接頭的信號“-”
2.3自由口模式
這里先介紹一下S7-200的自由口模式,S7-200的默認通訊方式是PPI通訊,不能自由的收發數據,想自由收發數據就必須將S7-200的通訊接口設置為自由口模式。控制S7-200自由口的是特殊位寄存器SMB30和SMB130。其中SMB30是控制CPU通訊口0的,SMB130是控制通訊口1的,如果只有一個通訊端口就只能使用SMB30這個特殊位寄存器了。下面我們來看看SMB30這8個位,分別表示什么含義。如下圖所示。

①、0 -1位: 協議選擇
mm:00 = 點到點接口協議(PPI/從站模式)
01 = 自由口協議
10 = PPI/主站模式
11 = 保留(缺省是PPI/從站模式)
②、2-4位:自由口波特率設置
bbb:000= 38400bps
001 = 19200bps
010 = 9600bps
011 = 4800bps
100 = 2400bps
101 = 1200bps
110 = 115200bps
111 = 57600bps
③、5位:每個字符的數據位
d:0 = 8位/字符。1 = 7位/字符

④、6-7位:效驗選擇
pp:00 = 不效驗
01 = 偶效驗
10 = 不效驗
11 = 奇效驗
【理論補充】在通訊的過程中每次發送與接收的最小單位是字符而不是位,1個字符包括1個起始位表示字符的開始,1個停止位表示字符的結束,一個奇偶效驗位用于驗證字符錯對,和8個或者7個數據位用于傳遞信息。奇偶效驗位可有可無,數據位通常情況下是8個位也就是1個字節,因此一個字符包含奇偶效驗位通常是11個位,不包含奇偶效驗位則是10個位。
如果我們在S7-200CPU的通訊端口0使用自由口模式,通訊速率為9600bps傳輸的字符不要奇偶效驗位,那么就必須將SMB30中的數據配置成00001001換算成16進制就是16#9

2.4程序編寫
在編寫程序之前,先要掌握S7-200發送指令的使用。

XMT發送指令有兩個管腳,TBL和PORT。
【PORT】通訊端口編號,如果用0端口則寫0,如果用1端口則寫1.

【TBL】定義發送緩沖區的起始地址和緩沖區的大小(注意是起始地址和緩沖區的大小兩個參數)。
舉例:如果TBL中寫VB100并且VB100中存放1,那么發送緩沖區是VB101,發送數據時將VB101中的數據發送出去。如果VB100中存放2,那么發送緩沖區為VB101和VB102,發送數據時將VB101、VB102兩個字節的數據發送出去。
程序如下圖所示

上圖所示的程序是一個最簡單的發送程序,先用SMB30將通訊口0定義為自由口,通訊速率9600bps,然后定義VB101為發送緩沖區(因為VB100中存放的是1)。通過SM0.5將VB101中的16進制的CC以1秒鐘為單位發送給電腦。最后在電腦端將會以1秒為單位接收到PLC發送的字符CC。如下圖所示


【特別注明】此資源來自互聯網,版權歸原作者所有。僅作為購買前的參考,如若喜歡,請購買正版


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲男人网 | 一级毛片中国 | 91视频网| 亚洲精品91 | 91国在线视频| 午夜在线 | 九九热精品视频 | 一区二区三区四区国产 | 国产高清免费视频 | 日韩av免费在线电影 | 亚洲一区视频在线播放 | 中文字幕日韩欧美一区二区三区 | 精品国产一区二区三区免费 | 国产日韩欧美中文 | 自拍偷拍亚洲一区 | 精品欧美 | chengrenzaixian| av网站在线播放 | www.成人在线视频 | 这里有精品 | 99国产精品99久久久久久 | 久久成 | 久久精品亚洲精品 | 在线视频a | 欧美一级视频免费看 | 人干人操 | 日韩欧美中文字幕在线观看 | 国产精品一区二区三区在线播放 | 日韩欧美理论片 | 国产在线网站 | 午夜影院在线观看视频 | 午夜精品在线 | 日韩电影在线一区 | 一区二区三区高清不卡 | 黄色免费看 | 欧美最猛性xxxxx亚洲精品 | 免费不卡av | 粉嫩一区二区三区国产精品 | 亚洲一区二区av在线 | 日韩精品视频网 | av一区二区三区四区 |