本書開篇簡要地介紹了歐姆龍PLC的編程軟件與仿真軟件,包括CX-Programmer、CX-Simulator、CX-Designer及CX-One等軟件,然后講解了歐姆龍PLC的指令系統(tǒng)和識讀梯形圖的方法。本書重點介紹時序指令、定時器/計數(shù)器指令、數(shù)據(jù)指令、運算指令、中斷指令、通信指令、塊指令及其他特殊指令等,同時配以大量的梯形圖編程實例,以幫助讀者熟練掌握相關(guān)指令和梯形圖的應(yīng)用。 本書內(nèi)容精練、通俗易懂,既可作為歐姆龍PLC編程人員的參考用書,也可作為高等院校相關(guān)專業(yè)的教學用書。
前 言
可編程控制器(Programmable Logic Controller,PLC)是專門應(yīng)用于工業(yè)環(huán)境的以計算機技術(shù)為核心的自動控制裝置。經(jīng)過數(shù)十年的發(fā)展,PLC已經(jīng)集數(shù)據(jù)處理、程序控制、參數(shù)調(diào)節(jié)和數(shù)據(jù)通信等功能于一體,可以滿足工業(yè)控制中絕大多數(shù)應(yīng)用場合的需要。
歐姆龍PLC具有體積小、能耗低、可靠性高、抗干擾能力強、維護方便、便于改造等突出的優(yōu)點,因此在工業(yè)控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、智能化儀器儀表等領(lǐng)域得到極為廣泛的應(yīng)用。
本書自第1版面市以來,因其具有簡單的基礎(chǔ)知識介紹、翔實的指令系統(tǒng)講解、豐富的應(yīng)用實例示范、有針對性的實踐指導等特點,得到了廣大讀者的認可和喜愛。在本書第3版編寫過程中,作者根據(jù)讀者的建議和意見進行了部分完善和充實,修正了前兩版的錯誤之處。
本書的第3版保留了前兩版的整體內(nèi)容架構(gòu),強化了歐姆龍PLC梯形圖的基礎(chǔ)知識介紹,并補充和完善了部分指令的經(jīng)典應(yīng)用范例內(nèi)容。本書延續(xù)了前兩版的內(nèi)容特點,即從初學者的學習特點出發(fā),前面兩章分別介紹歐姆龍PLC編程軟件與仿真軟件,包括CX-Programmer、CX-Simulator、CX-Designer及CX-One等,PLC的指令系統(tǒng)和識讀梯形圖的方法,然后詳細介紹歐姆龍PLC的指令系統(tǒng)和編程指令,絕大多數(shù)指令都配以精心選擇的編程實例作為參照,由淺入深地介紹了歐姆龍PLC指令應(yīng)用的全過程。本版特別注重讀者對歐姆龍PLC指令的實際應(yīng)用方面的意見,在多個章節(jié)中增加了歐姆龍PLC指令的具體實際應(yīng)用范例,實現(xiàn)了歐姆龍PLC指令基礎(chǔ)含義解釋與其典型應(yīng)用實例講解的完美結(jié)合。
本書內(nèi)容精練,通俗易懂,講解詳細。通過對本書的學習,讀者可以快速掌握歐姆龍PLC指令梯形圖語言的編程過程。本書既可作為歐姆龍PLC編程人員的參考用書,也可作為高等院校相關(guān)專業(yè)的教學用書。
本書由劉艷偉、張凌寒和張玉光編著。另外,參加本書編寫的還有李若谷、湯嘉立、葛祥磊、姚宗旭、劉洋洋、何世蘭、王闖、韓柯華、張玉梅和徐慧超。本書在編寫過程中參考了部分優(yōu)秀書籍的相關(guān)內(nèi)容,引用了其中的數(shù)據(jù)及資料,在此向相關(guān)書籍的作者表示衷心的感謝!
由于時間倉促,梯形圖和其他圖表較多,受學識水平所限,錯誤之處在所難免,敬請廣大讀者批評指正。
編 著 者
2017年9月
劉艷偉,曾在航天企業(yè)擔任設(shè)計師,中國電子學會會員,主要從事單片機、嵌入式系統(tǒng)、機電等專業(yè)的圖書編寫和教學指導工作,在計算機、電子、通信方面具有扎實的理論知識基礎(chǔ)和豐富的實踐開發(fā)能力,先后編撰《單片機應(yīng)用技術(shù)實例教程》、《嵌入式系統(tǒng)開發(fā)技術(shù)》、《LabVIEW入門與實踐開發(fā)100例》、《51單片機應(yīng)用開發(fā)范例大全》等優(yōu)秀教材和圖書,受到了廣大高校師生的贊譽。
第1章 PLC編程軟件與仿真軟件
1.1 編程軟件CX-Programmer
1.1.1 安裝CX-Programmer編程軟件
1.1.2 CX-Programmer編程軟件的主要功能
1.1.3 CX-Programmer編程軟件的使用
1.2 仿真軟件CX-Simulator
1.2.1 系統(tǒng)要求
1.2.2 軟件的使用
1.3 集成工具包CX-One
1.3.1 CX-One
1.3.2 CX-Designer
第2章 PLC指令系統(tǒng)及編程語言
2.1 基本概念
2.2 指令系統(tǒng)
2.2.1 基本指令
2.2.2 功能指令
2.3 編程語言
2.3.1 編程語言的基本特點
2.3.2 編程語言的形式
2.4 梯形圖編程語言
2.4.1 梯形圖程序設(shè)計語言的特點
2.4.2 梯形圖程序設(shè)計語言的組成元素
2.4.3 梯形圖程序的執(zhí)行過程
第3章 時序指令
3.1 時序輸入指令
3.1.1 讀/讀非
3.1.2 與/與非
3.1.3 或/或非
3.1.4 塊與
3.1.5 塊或
3.1.6 非
3.1.7 P.F.上升沿微分
3.1.8 P.F.下降沿微分
3.1.9 LD 型·位測試/LD型·位測試非
3.1.10 AND 型·位測試/AND LD 型·位測試非
3.1.11 OR 型·位測試/OR型·位測試非
3.2 時序輸出指令
3.2.1 輸出/輸出非
3.2.2 臨時存儲繼電器
3.2.3 保持
3.2.4 上升沿微分
3.2.5 下降沿微分
3.2.6 置位/復位
3.2.7 多位置位
3.2.8 多位復位
3.2.9 位置位/位復位
3.2.10 位輸出
3.3 時序控制指令
3.3.1 結(jié)束
3.3.2 無功能
3.3.3 互鎖/互鎖解除
3.3.4 多重互鎖(微分標志保持型)/多重互鎖(微分標志非保持型)/多重互鎖解除
3.3.5 轉(zhuǎn)移/轉(zhuǎn)移結(jié)束
3.3.6 條件轉(zhuǎn)移/條件非轉(zhuǎn)移/轉(zhuǎn)移結(jié)束
3.3.7 多重轉(zhuǎn)移/多重轉(zhuǎn)移結(jié)束
3.3.8 循環(huán)開始/循環(huán)結(jié)束
3.3.9 循環(huán)中斷
3.4 典型入門范例
第4章 定時器/計數(shù)器指令
4.1 定時器指令
4.1.1 定時器
4.1.2 高速定時器
4.1.3 超高速定時器
4.1.4 累計定時器
4.1.5 長時間定時器
4.1.6 多輸出定時器
4.2 計數(shù)器指令
4.2.1 計數(shù)器
4.2.2 可逆計數(shù)器
4.2.3 定時器/計數(shù)器復位
4.3 典型入門范例
第5章 數(shù)據(jù)指令
5.1 比較指令
5.1.1 數(shù)據(jù)比較
5.1.2 時刻比較
5.1.3 無符號比較/無符號倍長比較
5.1.4 帶符號BIN比較/帶符號BIN倍長比較
5.1.5 多通道比較
5.1.6 表格一致性比較
5.1.7 無符號表格間比較
5.1.8 擴展表格間比較
5.1.9 區(qū)域比較/倍長區(qū)域比較
5.2 數(shù)據(jù)傳送指令
5.2.1 傳送/倍長傳送
5.2.2 取反傳送/取反倍長傳送
5.2.3 位傳送
5.2.4 十六進制位傳送
5.2.5 多位傳送
5.2.6 塊傳送
5.2.7 塊設(shè)定
5.2.8 數(shù)據(jù)交換/數(shù)據(jù)倍長交換
5.2.9 數(shù)據(jù)分配
5.2.10 數(shù)據(jù)抽取
5.2.11 變址寄存器設(shè)定
5.3 數(shù)據(jù)移位指令
5.3.1 移位寄存器
5.3.2 左/右移位寄存器
5.3.3 非同步移位寄存器
5.3.4 字移位
5.3.5 左移1位/倍長左移1位
5.3.6 右移1位/倍長右移1位
5.3.7 帶進位左循環(huán)移位1位/帶進位倍長左循環(huán)移位1位
5.3.8 無進位左循環(huán)移位1位/無進位倍長左循環(huán)移位1位
5.3.9 帶進位右循環(huán)移位1位/帶進位倍長右循環(huán)稱位1位
5.3.10 無進位右循環(huán)移位1位/無進位倍長右循環(huán)移位1位
5.3.11 十六進制左移1位
5.3.12 十六進制右移1位
5.3.13 N位左移1位
5.3.14 N位右移1位
5.3.15 N位左移/N位倍長左移
5.3.16 N位右移/N位倍長右移
5.4 數(shù)據(jù)轉(zhuǎn)換指令
5.4.1 BCDBIN轉(zhuǎn)換/BCDBIN倍長轉(zhuǎn)換
5.4.2 BINBCD轉(zhuǎn)換/BINBCD倍長轉(zhuǎn)換
5.4.3 2的單字求補碼/2的雙字求補碼
5.4.4 符號擴展
5.4.5 416/8256解碼器
5.4.6 164/2568編碼器
5.4.7 ASCII代碼轉(zhuǎn)換
5.4.8 ASCIIHEX轉(zhuǎn)換
5.4.9 位列位行轉(zhuǎn)換
5.4.10 位行位列轉(zhuǎn)換
5.4.11 帶符號BCDBIN轉(zhuǎn)換
5.4.12 帶符號BCDBIN倍長轉(zhuǎn)換
5.4.13 帶符號BINBCD轉(zhuǎn)換
5.4.14 帶符號BINBCD倍長轉(zhuǎn)換
5.4.15 格雷碼轉(zhuǎn)換
5.5 數(shù)據(jù)控制指令
5.5.1 PID運算
5.5.2 自整定PID運算
5.5.3 上/下限限位控制
5.5.4 死區(qū)控制
5.5.5 靜區(qū)控制
5.5.6 時間比例輸出
5.5.7 縮放1
5.5.8 縮放2
5.5.9 縮放3
5.5.10 數(shù)據(jù)平均化
5.6 表格數(shù)據(jù)處理指令
5.6.1 棧區(qū)域設(shè)定
5.6.2 棧數(shù)據(jù)存儲
5.6.3 先入后出
5.6.4 先入先出
5.6.5 表格區(qū)域聲明
5.6.6 記錄位置設(shè)定
5.6.7 記錄位置讀取
5.6.8 數(shù)據(jù)檢索
5.6.9 字節(jié)交換
5.6.10 最大值檢索
5.6.11 最小值檢索
5.6.12 總和計算
5.6.13 FCS值計算
5.6.14 棧數(shù)據(jù)數(shù)輸出
5.6.15 棧數(shù)據(jù)讀取
5.6.16 棧數(shù)據(jù)更新
5.6.17 棧數(shù)據(jù)插入
5.6.18 棧數(shù)據(jù)刪除
5.7 典型入門范例
第6章 運算指令
6.1 自加/自減指令(增量/減量指令)
6.1.1 BIN增量/BIN倍長增量
6.1.2 BIN減量/BIN倍長減量
6.1.3 BCD增量/BCD倍長增量
6.1.4 BCD減量/BCD倍長減量
6.2 四則運算指令
6.2.1 帶符號無CY標志BIN加法/帶符號無CY標志BIN倍長加法
6.2.2 帶符號和CY標志BIN加法/帶符號和CY標志BIN倍長加法
6.2.3 無CY標志BCD加法/無CY標志BCD倍長加法
6.2.4 帶CY標志BCD加法/帶CY標志BCD倍長加法
6.2.5 帶符號無CY標志BIN減法/帶符號無CY標志BIN倍長減法
6.2.6 帶符號和CY標志BIN減法/帶符號和CY標志BIN倍長減法
6.2.7 無CY標志BCD減法/無CY標志BCD倍長減法
6.2.8 帶CY標志BCD減法/帶CY標志BCD倍長減法
6.2.9 帶符號BIN乘法/帶符號BIN倍長乘法
6.2.10 無符號BIN乘法/無符號BIN倍長乘法
6.2.11 BCD乘法/BCD倍長乘法
6.2.12 帶符號BIN除法/帶符號BIN倍長除法
6.2.13 無符號BIN除法/無符號BIN倍長除法
6.2.14 BCD除法/BCD倍長除法
6.3 邏輯運算指令
6.3.1 字與/雙字與
6.3.2 字或/雙字或
6.3.3 字異或/雙字異或
6.3.4 字同或/雙字同或
6.3.5 逐位取反/雙字逐位取反
6.4 特殊運算指令
6.4.1 BIN平方根運算
6.4.2 BCD平方根運算
6.4.3 數(shù)值轉(zhuǎn)換
6.4.4 BCD浮點除法
6.4.5 位計數(shù)
6.5 浮點轉(zhuǎn)換/運算指令
6.5.1 浮點16位BIN轉(zhuǎn)換
6.5.2 浮點32位BIN轉(zhuǎn)換
6.5.3 16位BIN浮點轉(zhuǎn)換
6.5.4 32位BIN浮點轉(zhuǎn)換
6.5.5 浮點加法
6.5.6 浮點減法
6.5.7 浮點乘法
6.5.8 浮點除法
6.5.9 角度弧度轉(zhuǎn)換
6.5.10 弧度角度轉(zhuǎn)換
6.5.11 sin運算
6.5.12 cos運算
6.5.13 tan運算
6.5.14 arcsin運算
6.5.15 arccos運算
6.5.16 arctan運算
6.5.17 平方根運算
6.5.18 以e為底的指數(shù)運算
6.5.19 自然對數(shù)運算
6.5.20 指數(shù)運算
6.5.21 單精度浮點數(shù)據(jù)比較
6.5.22 浮點字符串轉(zhuǎn)換
6.5.23 字符串浮點轉(zhuǎn)換
6.6 雙精度浮點轉(zhuǎn)換/運算指令
6.6.1 雙精度浮點16位BIN轉(zhuǎn)換
6.6.2 雙精度浮點32位BIN轉(zhuǎn)換
6.6.3 16位BIN雙精度浮點轉(zhuǎn)換
6.6.4 32位BIN雙精度浮點轉(zhuǎn)換
6.6.5 雙精度浮點加法
6.6.6 雙精度浮點減法
6.6.7 雙精度浮點乘法
6.6.8 雙精度浮點除法
6.6.9 雙精度角度弧度轉(zhuǎn)換
6.6.10 雙精度弧度角度轉(zhuǎn)換
6.6.11 雙精度sin運算
6.6.12 雙精度cos運算
6.6.13 雙精度tan運算
6.6.14 雙精度arcsin運算
6.6.15 雙精度arccos運算
6.6.16 雙精度arctan運算
6.6.17 雙精度平方根運算
6.6.18 以e為底的雙精度指數(shù)運算
6.6.19 雙精度自然對數(shù)運算
6.6.20 雙精度指數(shù)運算
6.6.21 雙精度浮點數(shù)據(jù)比較
6.7 典型入門范例
第7章 子程序及中斷控制指令
7.1 子程序指令
7.1.1 子程序調(diào)用
7.1.2 宏
7.1.3 子程序進入/子程序返回
7.1.4 全局子程序調(diào)用
7.1.5 全局子程序進入/全局子程序返回
7.2 中斷控制指令
7.2.1 中斷屏蔽設(shè)置
7.2.2 中斷屏蔽前導
7.2.3 中斷解除
7.2.4 中斷任務(wù)執(zhí)行禁止
7.2.5 中斷任務(wù)執(zhí)行禁止解除
第8章 I/O單元用指令和高速計數(shù)/脈沖輸出指令
8.1 I/O單元用指令
8.1.1 I/O刷新
8.1.2 7段解碼器
8.1.3 數(shù)字式開關(guān)
8.1.4 10鍵輸入
8.1.5 16鍵輸入