三菱fx系列plc編程元件及基本指令(PLC學習之數字電路基礎)
2023-10-16 07:23:07 2
哈嘍大家好呀,我是《電工基礎》學習分享系列文章的作者小楊,在學過一遍《電工基礎》這門課後,我要開始進軍PLC界了,在這裡我和大多數人一樣都是PLC小白哦!所以,如果大家也是不懂PLC,但又想學的,就跟我一起,共同進步吧!當然,如果有哪位PLC大神有什麼賜教、建議的,歡迎指出喲~
在有學習PLC的打算後,我就開始諮詢身邊的PLC大神們(其實只問了一位哈哈),該從何下手,才能更快捷地學好PLC呢?經過多方諮詢,慎重考慮(並沒有),我初步的PLC學習之旅是這樣的:李金城老師的《三菱FX PLC編程與應用入門》——丁先群老師的《三菱GxWorks2編程調試軟體應用》。先學習李老師的入門課,了解了解PLC是什麼,然後在學到編程時再學習丁老師的課程。所以,我己經預先安裝好了GxWorks2軟體,真是迫不及待地想用上它呢。
我已經按捺不住蠢蠢欲動的心,趕緊點開了《三菱FX PLC編程與應用入門》這門課,學完第一章「數字電路基礎」後,我感覺還不錯。李老師這門課本來就是為零基礎的學員而開設的,而我本就有一點基礎在,但在學習的過程中還是有很大的收穫。
李老師所講述的數字電路基礎內容包括了幾種進位數的含義和轉化、幾種碼制的特點及基本邏輯電路的知識。
一、數制說到數制,我想很多人都和我一樣,最先想到的就是十進位,即所謂的滿十進一。在很小的時候,爸爸媽媽就開始教我們用手指進行算術,也許就是因為手指只有十個,所以在我們人類的生活中十進位的用法最為普遍。
然而,除了十進位外,比較常用的數制還有二進位、八進位以及十六進位。可以說這些數制是我們與計算機溝通的橋梁之一。信息化時代的到來大大方便了我們的工作與生活,為了能與更好地計算機進行交流,我們就要學會幾種數制。就像是我們要出國,為了與當地的居民交流,就要學會當地的一些語言一樣。
十進位是滿十進一,該位歸零,依此類推,顯然二進位就是滿二進一,該位歸零;八進位是滿八進一,該位歸零;十六進位是滿十六進一,該位歸零。十進位中的數字(數碼)有0~9,而二進位中的數碼只有0和1,在計算機的眼裡,它們只局限於二進位信息的處理,我們輸入的任何代碼,計算機都會把它們翻譯成二進位數再處理。
數制有三要素:基數、位權、復位和進位。復位和進位,我想不用我解釋,大家也是知道的,這個用在數字運算上,例如1 9滿十進一,十位上為1,個位上復位為0。多少進位,基數就是多少,例如十六進位的基數就是16。權,在數制裡面它指的是位值。我們在學物理的時候,很多時候都會提到單位時間、單位面積等等的單位值,數制中的權我們也可以這樣理解,權就是每一個數位上的單位值,例如十進位中個位、十位、百位、千位,千位的單位值是1000,即103,這個1000就是權,顯然,一個數碼,它的權越大,該數碼就越大。
為了方便區分一個數是什麼進位,有時候我們需要在前面加一個字母,例如1001這個數,我們可以說這是一千零一,也可以說是9,但是如果給一個數B1001,那麼我們就不能說它是一千零一了,因為全面的字母B就代表了這個數是二進位數。
這些字母其實就是各個進位英文單詞的首字母,例如D指十進位,H指的是十六進位。中英日韓文等可以互相翻譯,同樣的,幾種不同進位數之間也是可以互相轉換的。比較簡單的是把其他數制轉換為十進位,例如H36這個十六進位數轉換為十進位,直接是3x161 6x160=54,即H36=D54。
有點難度的是把十進位數轉換為其他進位,李老師在課程中就講得比較詳細,例如在下圖中,把十進位數54轉換為二進位數,如下圖,分別除以2,從下到上取餘數,得出相對應的二進位數B110110。當然,如果想把十進位轉換為八進位,那就除以八,依次類推。
二進位轉換為十六進位,也比較簡單,直接把二進位數從低位按每4個數為一組,每組數轉換為十進位數,然後把各組所轉換的數組合起來,就是對應的十六進位數;反之,十六進位數轉換為二進位,直接把各個數碼轉換為4個數組成的二進位數,例如H31,其中1變為0001,3變為0011,那麼就可以得出H31=B00110001。八進位數作為中間數,可以先把它轉換為二進位或十進位,再進行其他轉換。
數制學起來比較有意思的是各種數制之間的轉換,在自娛自樂的同時又可以讓自己更為熟練,當然,你們覺不覺得有趣,我就不得而知了。
二、碼制在學習PLC之前,我以為編碼只是應用於計算機系統中的,例如我以前就學過微機的相關知識,學了李老師的課才發現,其實PLC也是一種工業電腦,所以,要學習PLC,也就要了解一下編碼的知識。
我又諮詢了一些(一位)大神,在學習PLC時,其實對碼制知識的要求沒有很高,數制的知識比碼制的知識更為重要一些,所以關於碼制,我也就簡單過一下。在PLC中比較常用的是8421BCD碼、格雷碼和ASCLL碼。
編碼是指用一組n位的二進位數碼來表示各種數據、字母符號、文字和控制信息等。這是因為計算機在處理數據時其本質就是處理二進位數碼,為了和計算機交流,我們把各種數據信息用統一的編碼方式表示為二進位數,然後給計算機識別。
1、8421BCD碼
8421BCD碼是十進位代碼中最常用的一種,用四位二進位碼表示十進位數的0~9。在這種編碼方式中,四位二進位數中的每個1都代表一個固定的數值,從高位到低位分別是8、4、2、1,例如0101,指的是0x8 1x4 0x2 1x1=4 1=5,即0101 BCD=D5;又如D36=0011 0110 BCD。
那麼,怎麼快速地確定各個十進位數的對應BCD碼是什麼呢?例如D7,我們這樣做,上圖所示,7用8、4、2、1中的哪幾個數可以相加得到,顯然是4 2 1=7,對應BCD碼就是後三個數要為1,即D7=0111 BCD。
2、格雷碼
格雷碼又稱循環碼,在格雷碼中,每一位的狀態都按一定的順序循環。如下圖所示,在格雷碼中,從右到左,如果從0000開始,最右邊一位的狀態是按0110順序循環變化,右邊第二位按00111100順序循環變化……依此類推,每左移一位,循環變化的0和1的數目就增加一倍。格雷碼最大的優點就是,相鄰兩個代碼之間只有一位發生變化,例如編號12的格雷碼與編號11、13格雷碼對應位,只有一個變化。
3、ASCLL碼
ASCLL碼也就是美國信息交換標準代碼,廣泛用於計算機和通信領域中。ASCLL碼是一組7位二進位代碼,共128個,包括表示0~9的十個代碼、大小寫字母的52個代碼、32個表示各種符號的代碼以及34個控制碼,而什麼字符對應什麼ASCLL碼,我們可以通過查它的編碼表,在這裡我就不列舉啦,大家感興趣的,可以自己上網查一下哦。
三、基本邏輯運算電路在數字電路中,用1位二進位數碼的0和1表示一個事物的兩種不同邏輯狀態。例如可以用1和0表示門的開和關、電燈的亮和滅、人民幣的真和假等。所謂「邏輯」,是指事物間的因果關係,例如我花了兩百塊錢買了一門課,因就是我花了兩百塊,結果就是我得到了一門課。
邏輯運算就是按照某種因果關係進行推理運算,而邏輯運算的方法就是邏輯代數,其中邏輯代數中的三種基本運算有「與(AND)」、「或(OR)」、「非(NOT)」。
1、與邏輯運算
李老師在上課時舉了一個很形象的例子來解釋邏輯與。大概意思就是,某位員工要開報銷單,財務要求必須要兩位經理同時籤名才予報銷,在這裡,兩位經理同時籤名就邏輯與的關係,少一個籤名都不行。再如下圖的電路,只有兩個開關同時閉合,電燈才能亮,這種因果關係就稱為邏輯與。邏輯與的圖形符號和表達式如圖所示。
若以A、B表示開關的狀態,1表示閉合,0表示斷開;Y表示燈的狀態,1表示燈亮,0表示燈滅;顯然只有A、B同為1時,Y才為1。
2、或邏輯運算
還是報銷的例子,如果此時財務要求只要李經理和楊經理中的任一位經理籤名,就可以報銷,此時,這種因果關係就是或邏輯。
再如下圖的電路中,同樣是以A、B表示開關的狀態,1表示閉合,0表示斷開;Y表示燈的狀態,1表示燈亮,0表示燈滅;顯然,只要有一個開關閉合,燈就可以亮,只有兩個開關同時斷開時,燈才會滅,這種因果關係就稱為邏輯或。
3、非邏輯運算
邏輯非就更為直接了,簡單來說就是取反。我們直接以下圖的電路圖為例,依然是以A表示開關的狀態,1表示閉合,0表示斷開;Y表示燈的狀態,1表示燈亮,0表示燈滅;在這個電路中,開關一旦閉合,電燈就被短路而熄滅,也就是說,當A=1時Y=0,A=0時Y=1。這種因果關係就是邏輯非,也稱邏輯求反。
在《三菱FX PLC編程與應用入門》這門課的第一章中,李老師還講到了複雜邏輯電路與邏輯位運算。複雜邏輯電路和邏輯位運算還是比較有意思的,但是,我不打算深入研究,所以,你們懂的,想學的自己去學吧,反正我就過目一遍哈哈。
我在學完《三菱FX PLC編程與應用入門》第一章後,感覺還可以,目前還沒遇到什麼難題,希望之後的學習之旅能一直這麼順利!
選自《三菱FX PLC編程與應用入門》第一章第1、2課時
(技成培訓原創,作者:楊思慧,未經授權不得轉載,違者必究!)
↓學習資料
,