<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 基于VC++光伏逆變器監(jiān)控系統(tǒng)的設計和實現(xiàn)

          基于VC++光伏逆變器監(jiān)控系統(tǒng)的設計和實現(xiàn)

          作者: 時間:2012-05-09 來源:網(wǎng)絡 收藏


          3 的軟件
          3.1 軟件通信協(xié)議
          監(jiān)控軟件顯示的數(shù)據(jù)是由下位機按照一定的數(shù)據(jù)格式發(fā)送到PC上位機,為了保證數(shù)據(jù)的正確性和安全性,我們這里采用的是Modbus協(xié)議。Modbus協(xié)議是應用于電子控制器上的一種通用的語言??刂破髦g、控制器與網(wǎng)絡以及和其他的設備之間都可以通過它進行相互通信,Modbus協(xié)議已經(jīng)成為一種工業(yè)標準。在Modbus通信網(wǎng)絡中設備都必須選擇相同的傳輸模式和串口參數(shù)。
          本系統(tǒng)采用RTU模式:
          f.jpg
          當控制器設為在Modbus網(wǎng)絡上以RTU(遠程終端單元)模式通信,在消息中的每8Bit字節(jié)包含兩個4Bit的十六進制字符。這種方式的主要特點是:在同樣的波特率下,可比ASCII方式傳送更多的數(shù)據(jù)。
          代碼系統(tǒng)
          &middot;8位二進制,十六進制數(shù)0、、、、9,A、、、、F
          &middot;消息中的每個8位域都是一個兩個十六進制的字符組成每個字節(jié)的位
          &middot;一個起始位
          &middot;8個數(shù)據(jù)位,最小的有效位先發(fā)送
          &middot;1個奇偶校驗位,無校驗則無
          &middot;1個停止位(有校驗時),2個Bit(無校驗時)錯誤檢測域
          &middot;CRC(循環(huán)冗長檢測)
          CRC產(chǎn)生過程中,每個8位字符都單獨和寄存器內(nèi)容相或(OR),結(jié)果向最低有效位方向移動,最高有效位以0填充。LSB被提取出來檢測,如果LSB為1,寄存器單獨和預置的值或一下,如果LSB為0,則不進行。整個過程要重復8次。在最后一位(第8位)完成后,下一個8位字節(jié)又單獨和寄存器的當前值相或。最終寄存器中的值,是消息中所有的字節(jié)都執(zhí)行之后的CRC的值。CRC添加到一幀數(shù)據(jù)中時,低字節(jié)先加入,然后高字節(jié)。
          3.2 上位機的界面
          3.2.1 主界面
          啟動后,顯示主界面。利用環(huán)境下的菜單控件在主界面添加的功能菜單,有主運行界面、串口設置、數(shù)據(jù)、歷史數(shù)據(jù)、參數(shù)設置等菜單項。主運行界面在下面詳細介紹。串口設置主要是負責設置PC上位機串口參數(shù)設置,串口的參數(shù)設置一定要和下位機的串口參數(shù)設置一致,才能保證通信成功。數(shù)據(jù)界面主要顯示的是當前運行的狀態(tài)數(shù)據(jù),包括直流電壓、直流電流、分別三相電壓、三相電流、功率因數(shù)、并網(wǎng)頻率等實時參數(shù)。歷史數(shù)據(jù)是下來菜單,主要有日志查詢、歷史工作狀態(tài)數(shù)據(jù)、故障報表等??梢酝瓿蓺v史數(shù)據(jù)、故障報表、日志和曲線的保存和打印。參數(shù)設置時有一個用戶登錄窗口,只有輸入正確的用戶名和密碼,才可以成功登錄設置窗口。選擇不同的子菜單能很方便地在不同的功能窗口進行切換。

          本文引用地址:http://www.ex-cimer.com/article/177324.htm

          d.jpg



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();