組態(tài)軟件基礎(chǔ)及應(yīng)用(組態(tài)王KingView)第2版 課件 第八章 基于單片機實驗板的控制應(yīng)用_第1頁
組態(tài)軟件基礎(chǔ)及應(yīng)用(組態(tài)王KingView)第2版 課件 第八章 基于單片機實驗板的控制應(yīng)用_第2頁
組態(tài)軟件基礎(chǔ)及應(yīng)用(組態(tài)王KingView)第2版 課件 第八章 基于單片機實驗板的控制應(yīng)用_第3頁
組態(tài)軟件基礎(chǔ)及應(yīng)用(組態(tài)王KingView)第2版 課件 第八章 基于單片機實驗板的控制應(yīng)用_第4頁
組態(tài)軟件基礎(chǔ)及應(yīng)用(組態(tài)王KingView)第2版 課件 第八章 基于單片機實驗板的控制應(yīng)用_第5頁
已閱讀5頁,還剩57頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

我們畢業(yè)啦其實是答辯的標題地方工控組態(tài)軟件及應(yīng)用8.1單片機概述第八章基于單片機的控制應(yīng)用8.2系統(tǒng)設(shè)計說明8.3單片機數(shù)據(jù)采集與控制程序設(shè)計8.4本章小結(jié)8.1單片機概述

隨著工業(yè)自動化進程的不斷加快,現(xiàn)場儀器、儀表、設(shè)備正不斷向數(shù)字化、智能化和網(wǎng)絡(luò)化方向推進。單片機因為其強悍的現(xiàn)場數(shù)據(jù)處理能力,低廉的價格,緊湊的系統(tǒng)結(jié)構(gòu)、高度的靈活性,微小的功耗等一系列優(yōu)良特性在構(gòu)建智能化現(xiàn)場儀器、儀表、設(shè)備中占有極其重要的地位。如今已經(jīng)廣泛應(yīng)用于工業(yè)測量和控制系統(tǒng)中。將單片機和組態(tài)王結(jié)合起來,使它們實現(xiàn)“強強聯(lián)合”,成為改造傳統(tǒng)工業(yè),提升技術(shù)競爭力的重要趨勢。

目前許多自動化系統(tǒng)是由工控上位機組態(tài)軟件或觸摸屏與底層基于單片機組成的控制裝置組成,上位機組態(tài)軟件或觸摸屏通過與單片機控制裝置的串口通信來控制現(xiàn)場儀器設(shè)備,單片機采集數(shù)據(jù)和現(xiàn)場狀態(tài)通過串行口傳送到上位機組態(tài)軟件或觸摸屏,由上位機組態(tài)軟件對采集到的現(xiàn)場數(shù)據(jù)進行分析、存儲或顯示(觸摸屏在數(shù)據(jù)分析、存儲方面的功能沒有上位機組態(tài)軟件強大),以此達到對現(xiàn)場設(shè)備的運轉(zhuǎn)情況進行監(jiān)視與控制?!啊?/p>

8.1.1組態(tài)與單片機

單片機是一種集成電路芯片,又稱單片微控制器,其主要包括中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統(tǒng)、定時器/計數(shù)器等(可能還包括顯示驅(qū)動電路、脈寬調(diào)試電路、模擬多路轉(zhuǎn)換器、A/D轉(zhuǎn)換器等電路)。

1中央處理器(CPU)CPU包括三部分:運算器、控制器和專用寄存器。

(1)運算器:由一個算術(shù)邏輯單元ALL、一個布爾處理器和兩個8位暫存器組成。能給實現(xiàn)數(shù)據(jù)的四則運算(加、減、乘、除),邏輯運算(與、或、非、異或等),數(shù)據(jù)傳遞、移位、判斷、程序轉(zhuǎn)移等功能。

(2)

控制器:由指令寄存器IR,指令譯碼器ID,定時及控制邏輯電路等組成。

(3)專用寄存器:主要用來指示當前要執(zhí)行指令的內(nèi)存地址,存放操作數(shù)和指示指令執(zhí)行后的狀態(tài)。8.1單片機概述8.1.2單片機的構(gòu)成簡介2隨機存儲器(RAM)

主要用于存放各種數(shù)據(jù),可以隨機讀入或讀出,讀寫速度快,讀寫方便。但電源斷電后,存儲的信息丟失。3程序存儲器(ROM)

一般用來存放固定程序和數(shù)據(jù),特點是程序?qū)懭牒竽荛L期保存,斷電后數(shù)據(jù)不會丟失。多種I/O端口也稱為I/O接口或I/O通路,是單片機與外部實現(xiàn)控制和交換的通道,分為并行端口和串行端口。并行端口:80C51有4個I/O端口,分別為P0—P3,它們都有雙向功能每個端口都有一個8位數(shù)據(jù)輸出鎖存器和一個8位的數(shù)據(jù)輸入緩沖器。串行端口:80C51是具有一個全雙工可編程串行I/O端口??捎蒚XD串行發(fā)出,又可由RXD串行接收。

定時器/計數(shù)器

80C51可以處理5個中斷源發(fā)出的中斷請求,其中2個外部中斷請求INT0,INT1,2個內(nèi)部定時/計數(shù)器中斷請求T0,T1,一個內(nèi)部串行口中斷請求。8.1單片機概述8位單片機:1、51系列:以intelMCS51為核心,許多公司都購買了其核心,生產(chǎn)屬于自己的51單片機,主要有ATMEL公司(AT89S52等等),STC公司的(比如STC89C52RC),華邦,摩托羅拉,ST都有生產(chǎn)。2、AVR系列:以ATMEL公司的ATmega16為代表。3、PIC系列:以MICROCHIP公司的PIC16F877為代表。另外,還有專用的工業(yè)單片機,平時比較少見到,比如臺灣的合泰、義隆、三星,這些單片機往往體積小,功能很強但比較專一,價格很便宜。16位單片機,比較有名的是MSP430以及飛思卡爾系列的諸多產(chǎn)品。32位的單片機也比較多,不過一般都包含了ARM內(nèi)核,已經(jīng)開始向ARM過渡了,比如STM32等等。8.1單片機概述8.1.3常用單片機系列1編寫程序軟件

單片機程序的編寫不需要任何特殊的軟件,只要是文本編輯軟件就可以了,如WINDOWS自帶的記事本、WORD等,不過這些軟件編寫并不方便,有一些更好的文本編輯器可供選擇,如UltraEdit、PE2等。當然,人們最常用的還是使用開發(fā)軟件自帶的編輯器來進行編寫。以80C51系列單片機為例,最為流行的軟件是Keil軟件。Keil軟件是一款綜合開發(fā)工具,內(nèi)置了編輯器,ASM匯編器,C51編譯器,調(diào)試器等部分。8.1單片機概述8.1.4單片機的開發(fā)工具及編程語言2編程語言(1)匯編語言

用助記符表示的指令稱為匯編語言指令,用助記符編寫出來的程序稱為匯編語言程序。匯編語言比機器語言比較容易懂。但單片機只能識別機器語言,所以匯編語言編寫完成后要轉(zhuǎn)換成機器語言程序,再寫入單片機中。一般都是用軟件自動將匯編語言翻譯成機器語言。(2)高級語言

高級語言是依據(jù)數(shù)學語言設(shè)計的,在用高級語言編程時不用過多考慮單片機的內(nèi)部結(jié)構(gòu)。與匯編語言相比,高級語言易學易懂,而且通用性很強。高級語言的種類很多,如:B語言、Pascal語言、C語言和JAVA語言等。單片機常用C語言作為高級編程語言。8.1單片機概述8.2.1設(shè)計任務(wù)

利用KeilC51、匯編語言編寫程序?qū)崿F(xiàn)單片機數(shù)據(jù)采集和控制;利用組態(tài)王編寫程序?qū)崿F(xiàn)計算機與單片機自動化控制。1模擬電壓輸入

將0~5V電壓送給單片機,組態(tài)王與單片機建立通信讀取對應(yīng)的電壓值,并將此電壓值轉(zhuǎn)換成十進制,以數(shù)字、曲線的方式顯示。2模擬電壓輸出

在組態(tài)王界面中輸入一個變化的數(shù)值(范圍:0~10V),將此電壓發(fā)送給單片機某一I/O口,在此輸出口接一個LED燈,觀察二極管的亮度來區(qū)分電壓的變化。8.2系統(tǒng)設(shè)計說明3數(shù)字量輸入

在單片機的P3.3至P3.6口接入按鈕(由程序設(shè)定),組態(tài)王與單片機建立通信后讀取這兩個按鈕的狀態(tài)(打開或關(guān)閉),并在界面中以指示燈表示。4數(shù)字輸出

在組態(tài)王界面中,以按鈕來表示輸出的數(shù)字量,當按下組態(tài)王界面中的按鈕時,接在單片機對應(yīng)I/O口的發(fā)光二極管變亮。8.2系統(tǒng)設(shè)計說明8.2.2硬件連接數(shù)據(jù)采集與控制系統(tǒng)框圖如圖8-1。8.2系統(tǒng)設(shè)計說明圖8-1數(shù)據(jù)采集與控制系統(tǒng)框圖8.2.3組態(tài)王中的通信設(shè)置

用戶只要按照單片機ASII協(xié)議的規(guī)定編寫單片機通信程序就可以實現(xiàn)組態(tài)王與單片機的通信了。1定義組態(tài)王設(shè)備

定義設(shè)備選擇:智能模塊\單片機\通用單片機ASII\串口。

組態(tài)王的設(shè)備地址定義格式:##.#(與編寫的程序有關(guān))。前面兩個字符為設(shè)備地址,范圍是0~255,此地址為單片機地址;后面一個字符表示數(shù)據(jù)是否打包,“0”表示不打包,“1”表示打包,與單片機的程序無關(guān)。2組態(tài)王通信設(shè)置

通信方式:RS—232,RS—485,RS—422。(本書中采用RS—232通信方式)。波特率:3600bit/s;

數(shù)據(jù)位:8位;奇偶校驗位:無校驗;停止位:1位。8.2系統(tǒng)設(shè)計說明8.2系統(tǒng)設(shè)計說明3定義變量

組態(tài)王中單片寄存器變量定義見表8-1。寄存器名稱讀寫屬性變量類型數(shù)據(jù)類型占用字節(jié)開始地址X0~X99讀寫I/O實數(shù),I/O整數(shù)BYTE10X100~X200讀寫I/O實數(shù),I/O整數(shù)USHORT2100X200以后讀寫I/O實數(shù),I/O整數(shù)FLOAT4200表8-18.3.1模擬量輸入工程實例1功能簡述

使用STC單片機片上ADC模塊資源,根據(jù)組態(tài)王通用單片機通信協(xié)議(ASCII),編寫組態(tài)王通用單片機通信協(xié)議下的單片機下位機程序設(shè)計;完成組態(tài)王與單片機的模擬量輸入的設(shè)計。2實例要求條件

計算機(最好是WindowsXP);軟件組態(tài)王7.5;KeilC51;STC單片機燒寫軟件;

單片機STC12C5A60S2。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計3原理簡述

單片機片上集成ADC模塊是單片機的發(fā)展趨勢,許多流行單片機都在片上集成有如ADC、PWM、SPI、I2c、等基本功能模塊。這些豐富的片上外設(shè),也是衡量單片機性能的一項指標。

調(diào)用片上資源的套路跟51配置定時器、配置串口的操作如出一轍,本質(zhì)上就是操作其控制寄存器、模式寄存器。產(chǎn)生中斷的,還有相關(guān)的中斷狀態(tài)寄存器和中斷向量(例如STC12C5A60S2單片機的AD中斷占用第5號中斷。用interrupt5聲明ADC中斷服務(wù)函數(shù))。

STC12C5A60S2單片機是廣州宏晶科技出產(chǎn)的一款增強型51單片機(指令、寄存器遵從51架構(gòu),但處理性能有所提升。由于功能較豐富,相關(guān)控制器也有增設(shè))。其處理速度較快(51指令集中部分指令的執(zhí)行周期有所縮減提升),片上資源較豐富(RAM、EEPROM、AD、PWM、SPI)。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計提示,在STC單片機的官方手冊里給出了具體的、可靠的模塊使用代碼。在開發(fā)的時候我們可以參考一下這些官方例程。單片機燒寫軟件中也帶有例程查找工能,直接按照需求找到相應(yīng)代碼。理解后略做修改即可使用,快捷準確。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-2ST系C12C5A列單片機引腳功能圖硬件連接上,根據(jù)編寫的程序,可連接一個電位器,電位器上端接+5v電源,下端接地,中間那端接到ADC模擬量輸入端口(本例的程序使用的單片機P1.0作為此端口),如圖8-38.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-3硬件連接4單片機與電腦通信測試打開電腦的設(shè)備管理器,查看串口號及進行端口參數(shù)設(shè)置,如圖8-4。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-4設(shè)備管理器串口設(shè)置

讀AD寄存器,校驗&設(shè)備地址&寄存器地址正確的話,返回采集到寄存器內(nèi)的AD值;錯誤返回:4030462A2A37360D;將編寫好的程序燒入單片機后,打開串口調(diào)試助手,設(shè)置通信參數(shù):串口號“COM6”,波特率“9600”,校驗位“無”,數(shù)據(jù)為“8”,停止位“1”;設(shè)置的參數(shù)與單片機參數(shù)一致。輸入如圖8-5中的數(shù)字,點擊發(fā)送。向單片機發(fā)送“403046433030303031303130350D”,若單片機返回類似于“4030463031413630300D”則表示通信成功。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-5串口助手模擬量輸入調(diào)試5組態(tài)王與單片機通信測試

在組態(tài)王中設(shè)置新設(shè)備。新建組態(tài)王工程,在組態(tài)王工程瀏覽器中選擇設(shè)備,雙擊右側(cè)的“新建”,啟動“設(shè)備配置向?qū)А边x擇:“設(shè)備驅(qū)動”—智能模塊—單片機—通用單片機ASCII—串口,如圖8-6。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-6選擇串口設(shè)備

單擊下一步,給設(shè)備指定唯一邏輯名稱,命名“MCU”;單擊下一步選擇串口號,如“COM6”(與電腦設(shè)備管理器一致);再單擊下一步,安裝PLC指定地址“15.0”。接著單擊下一步,出現(xiàn)“通信故障恢復(fù)策略”窗口,設(shè)置試恢復(fù)時間為30秒,最長恢復(fù)時間為24小時。單擊下一步完成串口設(shè)備設(shè)置。設(shè)置串口通信設(shè)置,雙擊“設(shè)備/COM6”,彈出設(shè)置串口窗口,進行參數(shù)設(shè)置,如圖8-7。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-7設(shè)置串口—COM6完成設(shè)置串口后,選擇已建立的單片機設(shè)備,單擊右鍵—選擇“測試MCU”項,彈出“串口設(shè)備測試”,對照參數(shù)是否設(shè)置正確,若正確,選擇“設(shè)備測試”選項。如圖8-8。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-8單片機通信參數(shù)

寄存器寫“X1”(由程序設(shè)定),數(shù)據(jù)類型為“BYTE”,單擊添加—讀取;讀出寄存器變量值,如圖8-9。調(diào)節(jié)電位器。該值有明顯變化,這說明組態(tài)王已經(jīng)與單片機通信成功。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-9單片機寄存器通信測試6組態(tài)王工程畫面建立

定義變量“數(shù)字量輸入”,變量屬性如圖8-10。注:變量讀寫屬性為“只讀”8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-10定義模擬量輸入變量“D2”

新建如圖8-11畫面,在組態(tài)王中選擇一個儀表,在工具箱中選擇實時曲線。并將變量“D2”關(guān)聯(lián)到儀表和曲線中去,“#####”選擇“模擬量輸出”關(guān)聯(lián)到“D2”。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-11組態(tài)王畫面7

運行畫面調(diào)試將組態(tài)王界面全部保存后,切換到運行畫面,顯示結(jié)果如圖8-12。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計

圖8-12運行畫面此次片上ADC實現(xiàn)的模擬量采集實驗,連線上,僅僅需要將要采集的模擬量與單片機相應(yīng)IO口連接就行了。對單片機IO口資源的占用極少,使用相當方便。若成功,可見組態(tài)王儀表空間示數(shù)及指針隨電位器的調(diào)節(jié)而發(fā)生變動。8.3.2模擬量輸出工程實例1功能簡述

使用STC單片機片上ADC模塊資源,根據(jù)組態(tài)王通用單片機通信協(xié)議(ASCII),編寫組態(tài)王通用單片機通信協(xié)議下的單片機下位機程序設(shè)計;完成組態(tài)王與單片機的模擬量輸出(PWM)的設(shè)計。2實例要求條件

計算機(最好是WindowsXP;軟件組態(tài)王7.5;KeilC51;STC單片機燒寫軟件;

單片機STC12C5A60S2。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計3原理簡述在前一個實例已介紹STC12C5A系列單片機,這里不再細說。硬件連接上,根據(jù)編寫的程序,可連接一個串接1K左右電阻的共陰或共陽LED燈作為PWM輸出(本例的程序使用的單片機P1.3作為此端口),如圖8-13。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-13硬件連接4單片機與電腦通信測試打開電腦的設(shè)備管理器,查看串口號及進行端口參數(shù)設(shè)置,如圖8-14。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-14設(shè)備管理器串口設(shè)置

將編寫好的程序燒入單片機后,打開串口調(diào)試助手,設(shè)置通信參數(shù):串口號“COM6”,波特率“9600”,校驗位“無”,數(shù)據(jù)為“8”,停止位“1”;設(shè)置的參數(shù)與單片機參數(shù)一致。寫DA寄存器時,校驗&設(shè)備地址&寄存器地址正確的話,電壓數(shù)據(jù)信息寫入到DA寄存器;成功返回:403046232337360D;錯誤返回:4030462A2A37360D。如圖8-15。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-15串口助手模擬量輸入調(diào)試5組態(tài)王與單片機通信測試

在組態(tài)王中設(shè)置新設(shè)備。新建組態(tài)王工程,在組態(tài)王工程瀏覽器中選擇設(shè)備,雙擊右側(cè)的“新建”,啟動“設(shè)備配置向?qū)А?;選擇:“設(shè)備驅(qū)動”—智能模塊—單片機—通用單片機ASCII—串口,如圖8-16。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-16選擇串口設(shè)備

單擊下一步,給設(shè)備指定唯一邏輯名稱,命名“單片機”單擊下一步選擇串口號,如“COM6”(與電腦設(shè)備管理器一致);再單擊下一步,安裝PLC指定地址“15.0”。接著單擊下一步,出現(xiàn)“通信故障恢復(fù)策略”窗口,設(shè)置試恢復(fù)時間為30秒,最長恢復(fù)時間為24小時。單擊下一步完成串口設(shè)備設(shè)置。設(shè)置串口通信設(shè)置,雙擊“設(shè)備/COM6”,彈出設(shè)置串口窗口,進行參數(shù)設(shè)置,如圖8-17。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-17設(shè)置串口—COM6

完成設(shè)置串口后,選擇已建立的單片機設(shè)備,單擊右鍵—選擇“測試單片機”項,彈出“串口設(shè)備測試”,如圖8-18。對照參數(shù)是否設(shè)置正確,若正確,選擇“設(shè)備測試”選項。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-18單片機通信參數(shù)

在“設(shè)備測試”選項中,寄存器寫“X50”(由程序設(shè)定),數(shù)據(jù)類型為“BYTE”,單擊添加;再雙擊已添加寄存器“X50”,數(shù)據(jù)輸入0~255之間,寄存器變量值變所添加的值,如圖8-19若將單片機P1.3接上了都LED燈,可看到接在P1.3的LED燈隨著寄存器值的變化而變化。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-19串口設(shè)備數(shù)據(jù)測試6組態(tài)王工程畫面建立

定義變量“數(shù)字量輸入”,變量屬性如圖8-20。注:變量讀寫屬性為“只寫”8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-20定義模擬量輸入變量“d1”

新建如圖8-21畫面,在組態(tài)王中選擇一個游標,在工具箱中選擇實時曲線。并將變量“d1”關(guān)聯(lián)到儀表和曲線中去,“#####”選擇“模擬量輸出”關(guān)聯(lián)到“d1”。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-21組態(tài)王畫面

圖中游標的屬性設(shè)置如圖8-22。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-22游標屬性設(shè)置7

運行畫面調(diào)試

將組態(tài)王界面全部保存后,切換到運行畫面。如圖8-23,此次片上PWM實現(xiàn)的模擬量采集實驗,連線上,僅僅需要將要受控對象與單片機相應(yīng)IO口連接就行了。需要注意的是,單片機僅僅提供了一個控制信號,其驅(qū)動能力有限,不能在缺少功率放大電路的情況下直接推動電機功率較大的設(shè)備。若實例成功,可見P1.3口連接的LED燈亮度會隨組態(tài)王畫面中的游標的調(diào)節(jié)而發(fā)生變化。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-23組態(tài)王運行畫面8.3.3單片機數(shù)字量輸入工程實例1功能簡述

使用STC單片機,根據(jù)組態(tài)王通用單片機通信協(xié)議(ASCII),編寫組態(tài)王通用單片機通信協(xié)議下的單片機下位機程序設(shè)計;完成組態(tài)王與單片機的數(shù)字量輸入的設(shè)計。2軟硬件要求

計算機(最好是WindowsXP);軟件組態(tài)王7.5;KeilC51;STC單片機燒寫軟件;單片機STC89C51或STC89C52等。

在單片機的P3.3至P3.6口接入按鈕(由程序設(shè)定),組態(tài)王與單片機建立通信后讀取這四個按鈕的狀態(tài)(打開或關(guān)閉),并在界面中以指示燈表示。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計3單片機與電腦通信測試

打開電腦的設(shè)備管理器,查看串口號及進行端口參數(shù)設(shè)置,如圖8-24。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-24設(shè)備管理器串口設(shè)置

將程序燒入單片機后,打開串口調(diào)試助手,設(shè)置通信參數(shù):串口號“COM6”,波特率“9600”,校驗位“無”,數(shù)據(jù)為“8”,停止位“1”;設(shè)置的參數(shù)與單片機參數(shù)一致。輸入如圖8-25,中的數(shù)字,點擊發(fā)送。向單片機發(fā)送“403046433030303031303130350D”,若單片機末尾返回“403046303230347C3733420D”則表示通信成功。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-25串口助手數(shù)字量輸入調(diào)試4組態(tài)王與單片機通信測試

在組態(tài)王中設(shè)置新設(shè)備。新建組態(tài)王工程,在組態(tài)王工程瀏覽器中選擇設(shè)備,雙擊右側(cè)的“新建”,啟動“設(shè)備配置向?qū)А边x擇:“設(shè)備驅(qū)動”—智能模塊—單片機—通用單片機ASCII—串口,如圖8-26。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-26選擇串口設(shè)備

單擊下一步,給設(shè)備指定唯一邏輯名稱,命名“MCU”

單擊下一步選擇串口號,如“COM6”(與電腦設(shè)備管理器一致)

再單擊下一步,安裝PLC指定地址“15.0”。

接著單擊下一步,出現(xiàn)“通信故障恢復(fù)策略”窗口,設(shè)置試恢復(fù)時間為30秒,最長恢復(fù)時間為24小時。單擊下一步完成串口設(shè)備設(shè)置。

單片機通信測試。

設(shè)置串口通信設(shè)置,雙擊“設(shè)備/COM6”,彈出設(shè)置串口窗口,進行參數(shù)設(shè)置,如圖8-27。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-27設(shè)置串口—COM6

完成設(shè)置串口后,選擇已建立的單片機設(shè)備,單擊右鍵—選擇“測試單片機”項,彈出“串口設(shè)備測試”,對照參數(shù)是否設(shè)置正確,若正確,選擇“設(shè)備測試”選項。如圖8-28。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-28單片機通信參數(shù)

寄存器寫“X100”,數(shù)據(jù)類型為“USHORT”,單擊添加—讀取;寄存器變量值為“1111”,如圖8-29,若將單片機P3.3至P3.6口接上按鈕,按下對應(yīng)按鈕對應(yīng)位變?yōu)?,例如:當按下P3.3時,變量值變?yōu)?110。這說明組態(tài)王已經(jīng)與單片機通信成功。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-29單片機寄存器通信測試5組態(tài)王工程畫面建立

定義變量“數(shù)字量輸入”,變量屬性如圖8-30。注:變量讀寫屬性為“讀寫”8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-30定義“數(shù)字量輸入”

另外,設(shè)置四個內(nèi)存離散變量,命名為“燈1”至“燈4”。

新建如圖8-31畫面,并將燈關(guān)聯(lián)到變量“燈1”至“燈4”?!?######”關(guān)聯(lián)到“數(shù)字量輸入”。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-31組態(tài)王畫面6畫面命令語言輸入

右鍵組態(tài)王畫面—命令語言進入畫面命令語言窗口,選擇運行時;寫入如下程序:8.3單片機數(shù)據(jù)采集與控制程序設(shè)計if(\\local\數(shù)字量輸入==1111){\\local\燈1=0;\\local\燈2=0;\\local\燈3=0;\\local\燈4=0;}if(\\local\數(shù)字量輸入==1110){\\local\燈1=1;\\local\燈2=0;\\local\燈3=0;\\local\燈4=0;}if(\\local\數(shù)字量輸入==1101){\\local\燈1=0;\\local\燈2=1;\\local\燈3=0;\\local\燈4=0;}if(\\local\數(shù)字量輸入==1011){\\local\燈1=0;\\local\燈2=0;\\local\燈3=1;\\local\燈4=0;}if(\\local\數(shù)字量輸入==0111){\\local\燈1=0;\\local\燈2=0;\\local\燈3=0;\\local\燈4=1;}7運行系統(tǒng)調(diào)試

切換至運行系統(tǒng),按下單片機P3.3至P3.6所接的按鈕,組態(tài)王運行畫面中對應(yīng)的燈亮。如圖8-32。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-32組態(tài)王運行畫面8.3.4單片機數(shù)字量輸出工程實例1功能簡述

使用STC單片機,根據(jù)組態(tài)王通用單片機通信協(xié)議(ASCII),編寫組態(tài)王通用單片機通信協(xié)議下的單片機下位機程序設(shè)計;完成組態(tài)王與單片機的數(shù)字量輸出的設(shè)計。2實例要求條件

計算機(最好是WindowsXP);軟件組態(tài)王7.5;KeilC51;STC單片機燒寫軟件;單片機STC89C51或STC89C52等。

在組態(tài)王界面中,以按鈕來表示輸出的數(shù)字量,當按下組態(tài)王界面中的按鈕時,接在單片機對應(yīng)P2.0和P2.1口的發(fā)光二極管變亮。

8.3單片機數(shù)據(jù)采集與控制程序設(shè)計3單片機與電腦通信測試打開電腦的設(shè)備管理器,查看串口號及進行端口參數(shù)設(shè)置,如圖8-33。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-33設(shè)備管理器串口設(shè)置

將程序燒入單片機后,打開串口調(diào)試助手,設(shè)置通信參數(shù):串口號“COM6”,波特率“9600”,校驗位“無”,數(shù)據(jù)為“8”,停止位“1”;設(shè)置的參數(shù)與單片機參數(shù)一致。

輸入如圖8-34中的數(shù)字,點擊發(fā)送。向單片機發(fā)送“4030464335303030463031304130360d”,若單片機返回“403046232337360D”則表示通信成功。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-34

串口助手數(shù)字量輸入調(diào)試4組態(tài)王與單片機通信測試

在組態(tài)王中設(shè)置新設(shè)備。新建組態(tài)王工程,在組態(tài)王工程瀏覽器中選擇設(shè)備,雙擊右側(cè)的“新建”,啟動“設(shè)備配置向?qū)А?/p>

選擇:“設(shè)備驅(qū)動”—智能模塊—單片機—通用單片機ASCII—串口,如圖8-35。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-35選擇串口設(shè)備

單擊下一步,給設(shè)備指定唯一邏輯名稱,命名“MCU”

單擊下一步選擇串口號,如“COM6”(與電腦設(shè)備管理器一致)

再單擊下一步,安裝PLC指定地址“15.0”。

接著單擊下一步,出現(xiàn)“通信故障恢復(fù)策略”窗口,設(shè)置試恢復(fù)時間為30秒,最長恢復(fù)時間為24小時。單擊下一步完成串口設(shè)備設(shè)置。

單片機通信測試。

設(shè)置串口通信設(shè)置,雙擊“設(shè)備/COM6”,彈出設(shè)置串口窗口,進行參數(shù)設(shè)置,如圖8-36。8.3單片機數(shù)據(jù)采集與控制程序設(shè)計圖8-36設(shè)置串口—COM6

完成設(shè)置串口后,選擇已建立的單片機設(shè)備,單擊右鍵—選擇“測試單片機”項

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論