狠狠色丁香久久综合婷婷亚洲成人福利在线-欧美日韩在线观看免费-国产99久久久久久免费看-国产欧美在线一区二区三区-欧美精品一区二区三区免费观看-国内精品99亚洲免费高清

            | 注冊| 產品展廳| 收藏該商鋪

            行業(yè)產品

            當前位置:
            潯之漫智控技術(上海)有限公司>>技術文章>>西門子6ES7390-1BC00-0AA0運城西門子S7-300代理商

            西門子6ES7390-1BC00-0AA0運城西門子S7-300代理商

            閱讀:303        發(fā)布時間:2022-6-7

            西門子6ES7390-1BC00-0AA0運城西門子S7-300代理商

            通訊功能的實現
            在Windows環(huán)境下,實現PC與單片機的通訊可利用Windows的通訊API函數或者利用VC++(或其它語言)的標準通訊函數_inp、_outp來實現。但上述兩種方法比較繁瑣,而采用ActiveX控件MSComm32來實現則非常方便。該控件用事件的方式簡化了對串口操作的編程,并可設置串行通信的數據發(fā)送和接收,還可對串口狀態(tài)及串口通信的信息格式和協(xié)議進行設置。其初始化程序如下:一般情況下,PC要與多個單片機89C51系統(tǒng)進行主從式通訊,為了區(qū)分各單片機系統(tǒng),可以使89C51采用串口工作方式3,即11位異步接收/發(fā)送方式,該方式的有效數據為9位,其中第9位為地址/數據信息的標志位,其作用是使從機據此判斷發(fā)送的數據是否為地址,從而實現多機操作。但現在由于采用的是MSCOMM控件來實現PC機和單片機之間的通訊,這是一種標準的10位串口通信方式,即8位標準數據位和該數據的起始位、停止位各1位。因此二者格式不相符,故很難利用上述方案。因此可考慮將單片機串口設為工作方式1,即改為10位異步接收/發(fā)送方式來解決,其通訊流程如下:
            首先發(fā)通信開始標志,接著發(fā)送需要操作的單片機系統(tǒng)地址,然后發(fā)送顯示工作命令字,該命令包括2個字節(jié),前一字節(jié)用于設定顯示方式和滾動方向,后一字節(jié)則用于設定顯示速度。再往下是傳送顯示內容的點陣數據,zui后對數據進行校驗。該通訊規(guī)約非常簡便,能夠較好的解決上述問題,從而實現PC機與多單片機之間的主從式通訊及對顯示的控制。
            需要注意的是,當顯示內容需要改變時,為了避免在單片機串行中斷接收數據時,顯示屏出現亂碼,應使顯示屏暫不顯示(處于“黑屏"狀態(tài)),直到數據接收*,串行中斷處理結束時再顯示。
            漢字字模的提取非常關鍵,本文的字模數據取自UCDOS下的字庫文件HZK16。關于這方面的介紹較多,文獻[2]給出了較為具體的在VC下提取漢字字模的方案,這里不再贅述。對于特殊字符或圖形點陣數據的提取,簡便的方法可以先做一個BMP文件,然后用一些取模軟件(如字模提取v2.1)來獲得。為了顯示方便,點陣數據的格式應為n×(16×8),不足要求的則應以0數據補充。 b.動態(tài)效果模擬顯示
            為了方便調節(jié)LED的顯示效果,筆者在PC機的控制界面上設計了LED顯示屏的模擬顯示,它同實際的顯示效果*一樣。用戶可以設定顯示的模式,并調節(jié)顯示速度,然后在界面上對顯示效果進行預覽,同時還可以隨時修改和設定參數,因而十分方便簡捷。
            為此,可先在界面上描繪出虛擬的LED顯示屏,由于實際的顯示屏為160×16點陣,故須在界面 上設定相同的區(qū)域。
            實現動態(tài)顯示效果的方法和以上幾種基本類似,這里以滾動顯示為例作一說明。對于需要滾動的文字,可以將其設置為位圖格式,暫存于內存中,然后利用VC 提供的位圖拷貝函數BitBlt將位圖復制到顯示位置。對于特殊字符或圖形,則可以直接利用BitBlt函數調用到顯示位置。然后在類CLEDDlg的 OnTimer函數中調用該函數,以實現文字的滾動顯示。另外,也可以通過設定不同的響應時間間隔來改變文字的滾動速度

            S7-300 以太網模塊在 Profinet 網絡中既可以作為控制器也可以作為設備,當 Profinet 連接中斷時,可以使用下面的方法來判斷。本文以 CP343-1 作為控制器為例,如圖1,兩個設備分別為ET200SP和ET200M。

              ( 37 KB )

              圖01

              Profinet 通訊中現場設備作為數據的提供者,會向控制器發(fā)送數據到 I 區(qū)。在發(fā)送的 PN 的報文中,按照槽位的順序添加內容,輸入模塊槽位:輸入數據+IOPS;輸出模塊槽位:IOCS。IOPS 表示 IO 數據的提供狀態(tài)(數據是好的還是壞的);IOCS表示IO 數據的消費狀態(tài)(Q 數據使用狀況)。如圖2,CP 的PN 通訊程序塊 FC11 "PNIO_SEND"和 FC12 "PNIO_RCIV" 提供了IOCS/IOPS 的輸出管腳,可以用于通訊狀態(tài)的評估。

              圖02

              IOCS/IOPS 的有效長度和通訊的數據長度有關,每個字節(jié)的輸入/輸出,對應一位IOCS/IOPS 輸出。如圖3,ET200SP 站點,輸入地址0-7 8個字節(jié),對應 IOPS 8位,即MB202;輸出地址0,一個字節(jié),對應IOCS 一位,即M200.0。

              圖03

              如圖4,ET200M 站點,輸入地址8 ,1個字節(jié),對應 IOPS 1位,順序后延即M203.0;輸出地址1,一個字節(jié),對應IOCS 一位,順序后延即M200.1。

              圖04

              如圖5-6,如果現場設備只是發(fā)生故障,通訊沒有中斷,例如 ET200SP AI模塊被拔出,只有相應的 IOPS 位置位,即MB202。

              圖05

              圖06

              如果此時現場設備和控制器的連接中斷,則現場設備相應的所有 IOPS/IOCS 都會置位,如圖7。此時,ET200M IOPS/IOCS 位全部置位,ET200M 此時可能掉站。



            收藏該商鋪

            登錄 后再收藏

            提示

            您的留言已提交成功!我們將在第一時間回復您~
            二維碼