• <cite id="uwv89"></cite>
      1. 亚洲综合小综合中文字幕,国产久爱免费精品视频,精品国产品香蕉在线,国产午夜精品在人线播放,精品一二三四区在线观看,国产成人无码免费看视频软件 ,色欲久久人妻内射,午夜在线观看成人av
        pjf
        級別: 家園常客
        精華主題: 0
        發(fā)帖數(shù)量: 642 個
        工控威望: 714 點
        下載積分: 2049 分
        在線時間: 291(小時)
        注冊時間: 2007-01-11
        最后登錄: 2025-05-14
        查看pjf的 主題 / 回貼
        樓主  發(fā)表于: 2008-04-10 20:42
        各位老師格雷碼和二進制有什么區(qū)別,怎么轉(zhuǎn)換.
        cvlsam
        富士低壓,POD(觸摸屏),PLC專賣
        級別: VIP會員

        精華主題: 3 篇
        發(fā)帖數(shù)量: 6819 個
        工控威望: 38423 點
        下載積分: 12759 分
        在線時間: 9756(小時)
        注冊時間: 2006-09-13
        最后登錄: 2025-08-29
        查看cvlsam的 主題 / 回貼
        1樓  發(fā)表于: 2008-04-10 21:25
        我使用富士的SPH系列編輯的程式,因爲(wèi)富士的SPH符合IEC61131-3編程規(guī)範,因此依據(jù)如此改爲(wèi)其它品牌的PLC也十分之方便。
        在精確定位控制系統(tǒng)中,為了提高控制精度,準確測量控制對象的位置是十分重要的。目前,測量位置的方法主要有2種,其一是使用位置傳感器,此方法精度高,但是在多路,長距離位置監(jiān)控系統(tǒng)中,由于成本昂貴且安裝困難,因此并不實用。其二是采用光電軸角編碼器進行精確位置控制,光電軸角編碼器根據(jù)其刻度方法及信號輸出形式,可分為增量式、絕對式以及混合式三種。而絕對式編碼器是直接輸出數(shù)字量的傳感器,它是利用自然二進制或循環(huán)二進制(格雷碼)方式進行光電轉(zhuǎn)換的,編碼的設(shè)計一般是采用自然二進制碼、循環(huán)二進制碼、二
        進制補碼等。特點是不要計數(shù)器,在轉(zhuǎn)軸的任意位置都可讀出一個固定的與位置相對應(yīng)的數(shù)字碼;抗干擾能力強,沒用累積誤差;電源切斷后位置信息不會丟失,但分辨率是由二進制的位數(shù)決定的,根據(jù)不同的精度要求,可以選擇不同的分辨率即位數(shù)。目前有10 位、11 位、12 位、13 位、14 位或更高位等多種。其中采用循環(huán)二進制編碼(即格雷碼)的絕對式編碼器,其輸出信號是一種數(shù)字排序,不是權(quán)重碼,每一位沒有確定的大小,不能直接進行比較大小和算術(shù)運算,也不能直接轉(zhuǎn)換成其他信號,要經(jīng)過一次碼變換,變成自然二進制碼,在由上位機讀取以實現(xiàn)相應(yīng)的控制。而在碼制變換中有不同的處理方式,本文著重介紹富士SX系列中使用編程的方法對二進制格雷碼與自然二進制碼的互換。

        一、格雷碼(又叫循環(huán)二進制碼或反射二進制碼)介紹
        在數(shù)字系統(tǒng)中只能識別0 和1,各種數(shù)據(jù)要轉(zhuǎn)換為二進制代碼才能進行處理,格雷碼是一種無權(quán)碼,采用絕對編碼方式,典型格雷碼是一種具有反射特性和循環(huán)特性的單步自補碼,它的循環(huán)、單步特性消除了隨機取數(shù)時出現(xiàn)重大誤差的可能,它的反射、自補特性使得求反非常方便。格雷碼屬于可靠性編碼,是一種錯誤最小化的編碼方式,因為,自然二進制碼可以直接由數(shù)/模轉(zhuǎn)換器轉(zhuǎn)換成模擬信號,但某些情況,例如從十進制的3 轉(zhuǎn)換成4 時二進制碼的每一位都要變,使數(shù)字電路產(chǎn)生很大的尖峰電流脈沖。而格雷碼則沒有這一缺點,它是一種數(shù)字排序系統(tǒng),其中的所有相鄰整數(shù)在它們的數(shù)字表示中只有一個數(shù)字不同。它在任意兩個相鄰的數(shù)之間轉(zhuǎn)換時,只有一個數(shù)位發(fā)生變化。它大大地減少了由一個狀態(tài)到下一個狀態(tài)時邏輯的混淆。另外由于最大數(shù)與最小數(shù)之間也僅一個數(shù)不同,故通常又叫格雷反射碼或循環(huán)碼。下表為幾種自然二進制碼與格雷碼的對照表:

        十進制數(shù)
        自然二進制
        格雷碼
        十進制
        自然二進制
        格雷碼
        0
        0000
        0000
        8
        1000
        1100
        1
        0001
        0001
        9
        1001
        1101
        2
        0010
        0011
        10
        1010
        1111
        3
        0011
        0010
        11
        1011
        1110
        4
        0100
        0110
        12
        1100
        1010
        5
        0101
        0111
        13
        1101
        1011
        6
        0110
        0101
        14
        1110
        1001
        7
        0111
        0100
        15
        1111
        1000

        二、二進制格雷碼與自然二進制碼的互換

        1、自然二進制碼轉(zhuǎn)換成二進制格雷碼
        自然二進制碼轉(zhuǎn)換成二進制格雷碼,其法則是保留自然二進制碼的最高位作為格雷碼的最高位,而次高位格雷碼為二進制碼的高位與次高位相異或,而格雷碼其余各位與次高位的求法相類似。
        例如:
        自然二進制編碼如下:
        1
        0
        0
        1
        那么轉(zhuǎn)換為格雷碼的方法是:保留最高位1,然后將第二位0與第一位1做異或操作,第三位的0與第二位的0做異或操作,第四位的1與第三位的0做異或操作,得到結(jié)果如下:
        1  1  0  1  Gray


        2、二進制格雷碼轉(zhuǎn)換成自然二進制碼
        二進制格雷碼轉(zhuǎn)換成自然二進制碼,其法則是保留格雷碼的最高位作為自然二進制碼的最高位,而次高位自然二進制碼為高位自然二進制碼與次高位格雷碼相異或,而自然二進制碼的其余各位與次高位自然二進制碼的求法相類似。
        例如將格雷碼1000轉(zhuǎn)換為自然二進制碼:

        1
        0
        0
        0
        1
        1
        1
        1
        上排為格雷碼,下排為自然二進制,從左到右分別為1~4位
        將上排的第一位高位作為自然二進制的最高位,因此在下排的第一位填入1,然后以上排第二位與下排第一位做異或操作,得到下排第二位結(jié)果為1,將上排第三位與下排第二位做異或操作,得到下排第三位的結(jié)果為1,同理,下排第四位的結(jié)果為1,因此,我們得到了轉(zhuǎn)換結(jié)果 如下:
        1  1  1  1  Bin

        三、自然二進制碼與格雷碼互換在富士SX系列PLC中的實現(xiàn)方法:

        1. 自然二進制碼轉(zhuǎn)換為格雷碼:
        根據(jù)自然二進制碼轉(zhuǎn)換為格雷碼的轉(zhuǎn)換規(guī)則,實際上就是將轉(zhuǎn)換數(shù)右移一位后與轉(zhuǎn)換數(shù)做異或操作。程序流程圖如下:

                  保存輸入數(shù) TEMP

        將TEMP右移一位,保存SHILETEMP

        將移位后的數(shù)據(jù)與原數(shù)據(jù)作異或

        返回異或后的數(shù)據(jù)

        功能塊中的程序如下:
        INPUT  輸入變量類型為DWORD   
        TEMP    局部變量類型為DWORD
        SHILETEMP  局部變量類型為DWORD
        BIN_TO_GRAY 功能塊返回變量返回類型為DWORD

        BIN_TO_GRAY:
        TEMP:=INPUT;
        SHILETEMP:=SHR_DWORD(TEMP,UNIT#1);
        BIN_TO_GRAY:=SHILETEMP XOR INPUT;

        2. 格雷碼轉(zhuǎn)換為自然二進制碼
        根據(jù)格雷碼轉(zhuǎn)換為自然二進制碼的轉(zhuǎn)換規(guī)則,實際上就是不斷的將格雷碼與二進制數(shù)做異或操作,也就是說,不斷的和本身的不同位數(shù)做異或操作,如原數(shù)據(jù)為32位的A,那么先將A向右移動一位,與本身進行異或,然后保留值為B,那么繼續(xù)將A向右移動一位,與B進行異或,保留為C,依次類推,直到A=1為止。程序流程圖如下:

        保存輸入數(shù)  TEMP,INPUT1

        如果輸入數(shù)為0,那么直接返回數(shù)據(jù)0后退出

        如果TEMP不等于1,那么循環(huán),否則返回數(shù)據(jù)

                TEMP右移1位,與輸入值作不斷異或

        功能塊中的程序如下:
        INPUT  輸入變量類型為DWORD   
        TEMP    局部變量類型為DWORD
        INPUT1  局部變量類型為DWORD
        GRAY_TO_BIN 功能塊返回變量返回類型為DWORD

        GRAY_TO_BIN:

        TEMP:=INPUT;
        INPUT1:=INPUT;
        IF TEMP=DWORD#0 THEN
              INPUT1:=DWORD#0;
              GRAY_TO_BIN:=INPUT1;
              RETURN;
        END_IF;
        WHILE TEMP<>DWORD#1 DO
          TEMP:=SHR_DWORD(TEMP,UINT#1);
          INPUT1:=TEMP XOR INPUT1;
        END_WHILE;
        GRAY_TO_BIN:=INPUT1;

        上述代碼在富士的SX系列PLC中試驗沒有問題,由于富士的SX系列PLC完全支持ST代碼方式的編程,因此基本上可以不做修改的應(yīng)用在西門子的S7系列的PLC中。
        由于三菱的PLC中已經(jīng)包含了自然二進制碼轉(zhuǎn)換為格雷碼指令GRY以及格雷碼轉(zhuǎn)換為自然二進制碼指令GBIN,因此上述代碼應(yīng)用于三菱系列的PLC已經(jīng)沒有意義,請使用三菱PLC本身附帶的指令,因為西門子以及富士的SX系列PLC并沒有附帶轉(zhuǎn)換指令,因此本人書寫了上述代碼用于補充SX系列的指令不足。

        主站蜘蛛池模板: 黄色亚洲一区二区在线观看| 亚洲熟妇色自偷自拍另类| 国产精品午夜无码AV天美传媒| 亚洲国产日韩在线视频| 无码免费大香伊蕉在人线国产| 国产一区二区在线有码| 国产精品午夜福利合集| 中文字幕亚洲综合小综合| 亚洲av综合色一区二区| 精品无码一区二区三区电影| 中文字幕日韩精品有码| 国产蜜臀在线一区二区三区| 精品国产乱码久久久久APP下载| 久久久久无码精品国产h动漫| 日韩一区二区三区三级| 国产AV无码专区亚洲AV漫画| 国产欲女高潮正在播放| 亚洲爆乳WWW无码专区| 久久精品无码免费不卡| 亚洲成人高清av在线| 人妻精品动漫H无码中字| 精品国产精品午夜福利| 国产精成人品日日拍夜夜| 成人午夜免费一区二区三区| 吉川爱美一区二区三区视频| 国产自拍一区二区三区在线| 精品国产亚洲av麻豆特色 | 国产亚洲欧美另类一区二区| 日本熟妇XXXX潮喷视频| 国产网友愉拍精品视频手机| 另类专区一区二区三区| 国产精品中文字幕观看| 午夜在线观看成人av| 日本高清中文字幕免费一区二区 | 国产精品中文字幕在线| 国产精品无码a∨麻豆| 亚洲春色在线视频| 亚洲人成电影在线天堂色| 国产超碰无码最新上传| 国产乱子伦视频在线播放| 国产精品视频亚洲二区|