西門子SIMATIC S7-300/400 問答集錦
----
1. 怎么使用 MPI/DP-RS232
問:我要將 CPU314 與電腦連接通信應該怎么辦?是否用 MPI/DP-RS232 連接器,要怎么用啊?
答:第一步,將適配器(PC Adapter)與 RS232 電纜相連。適配器的 MPI/DP 口插入 CPU的編程口,RS232 電纜與 PC 的串口連。
第二步,進入"開始"->"設置"->"控制面板"->"SET PG/PC Interface"。點選“ Access Point of the Application ” =S7ONLINE ( STEP7 ),“ Interface Parameter Assignment”=PC Adapter (MPI)。
第三步,點“Properties”進入屬性設置,MPI 設置內容:選中“PG/PC is the only master on the bus”,其余內容沿用默認值,或根據 CPU 的狀態變更。
Local Connection 設置:COM Port="硬件連接的串口",Transmission Rate="C" Adapter 的 撥碼位置。 確認后退出設置,如果上下位機參數一致的話,此時連機就會成功。
2. IW 和 PIW 有什么區別
問:STEP7 在實際應用中 IW 和 PIW 有什么區別?
答:我個人理解:對于沒有相應的映像緩沖區的輸入地址,一定采用 PIW 指令,而一般外 設輸入地址,都是沒有映像緩沖區的。對于有映像緩沖區的輸入地址,一般使用 IW,表示 取映像緩沖區內數據,但也可用 PIW,表示直接取地址內的數據而非映像緩沖區的數據, 相當于立即讀取。對于輸出亦是如此。
3. 模擬信號接地問題
問:我用的 SM331 8*12bit 模塊信號有時正常有時不正常,后來我把 COMP-跟信號的 M- 接起來就好了,但我同時發現他們之間接電容也可以,是怎么回事??模塊的 COMP-端、 各信號的 M-端和模塊 24 伏供電的 M 端之間電氣上有什么關系??
答:對隔離輸入模板,.摸板參考地 Mana 與 CPU 的電源地 M 沒有電連接。因此 Mana 與 M 有電位差時,必須采用隔離輸入模板。但是,如果電位差超過 Eiso,則必須建立 Mana與 M 之間的連接。對 SIEMENS 的模板,Eiso=75VDC 或 60VAC。
對非隔離輸入模板,則必須建立 Mana 與 M 之間的連接。 為抑止信號地 M-與 Mana 之間 的共模干擾,不同傳感器的接地方式不同,限于篇幅以及圖解困難,難以細說。一般原則是, 建立信號地與模板的地、模板地與(CPU)系統地的連接。如果有干擾環流,則將取消模 板地與系統地的連接,讓模擬地懸浮。另外,屏蔽推薦雙端接地,如果有干擾環流,則改為 單端。
4. cp342-5 的放置位置有要求嗎?放在軌道的什么地方最合適
問:cp342-5 的放置位置有要求嗎?放在軌道的什么地方最合適?
答:CP342-5 工作原理是, 首先通過硬件配置將各 DP 子站的分布 I/O 映射到 CP342-5 的內 存,然后再通過 FC1(DP_SEND)、FC2(DP_RECV)實現 CPU 與 CP342-5 的數據交換。數據 傳遞的過程如下:
FC1
CPU 內存————->CP342-5 ——————->DP 子站的輸出
FC2
CPU 內存<————-CP342-5 <——————-DP 子站的輸入
程序中我們控制的只是 CPU 與 CP342-5 之間的通訊,而子站與 CP342-5 的數據交換是由
CP342-5 根據硬件配置自動完成的。
關于 cp341 與 MM440 通訊
問:我用 s7-300(cp341)與 MM440 的 com 口(29 30)通訊控制變頻器2 個 PZD,4 個 PKW 具體參數設置如下:
P003=3700=51000=52011=12012=22013=4;其他參數采用工廠設置。
仿照 USS-S7 中的例程進行編程;但是只能向變頻器發送 PZD 參數(控制字 1 和主設定值), 但不能返回任何參數。CP341 的指示燈只顯示不斷發送,接受燈不亮。在數據塊 dbnd(DB100)中的 DBW6(通訊狀態字)的值為 0200;DBW8(通訊故障字) 的值為 0080;不知是什么意思?
答:CP341(RS422/485)采用(RS485)ASCII 碼協議。CP341 如果采用手冊中的接線 方式(11+,4-)則 cp341 的接收發送燈同時亮,但是不能進行數據傳輸;如果接線為(9+,2-)則出現前述情況,即只能向變頻器發送 PZD 參數(控制字 1 和主設定值),但不能返回 任何參數。如果你只接了 9、2 的話,現象則說明你的參數設置沒有問題。在 4 線方式下,9、2 是發送 端。11、4 是接受端,沒有接線自然沒有數據返回。
對 MM440 應該用 2 線方式,接線是
11(CP341)————-29(mm440)
4(CP341)————-30(mm440)
且 2 與 4、9 與 11 要短接,你接了嗎?
此外,在 PKW 中你的任務識別標記 ID 和參數號填對了嗎?
5. 315-2DP 與 ET200M
問:通過 DP 相連,CPU 地址為 2,ET200M 地址為 5,硬件上地址設置正確。 在項目管理器 里把軟硬件組態好了以后,把 SIMATIC300 STATION 傳給 PLC,顯示 SF 錯誤,ONLINE 情況下, OB1 不運行。
如果把 HARDWARE 再傳一遍,則 SF 錯誤無,OB1 可運行,現在再把 SIMATIC300 STATION傳給 PLC,則重新有 SF 錯誤。我原來以后,把 SIMATIC300 STATION 傳給 PLC 一次,相當于軟硬件組態都傳一次,請 問各位高手,這樣正常嗎?
答:我想樓上的各位可能沒有看清楚 royal 的問題:他通過 HARDWARE 下載+OB 下載, 沒有問題,這樣可以排除是組態和程序的問題。他只有在用 STATION 下載時才出現故障,SF 燈亮。所以原因不是很明確。我個人認為是不是 royal 并沒有將 HARDWARE 進行“編譯保存”,因此他的程序塊內沒有“SYSTEM BLOCKS”,所以才出現他所說的現象。請 royal 在試一試!
6. S7-300PID 的 FB41CONT_C 功能及參數設定
問:請教各位高手,本人現用到西門子 S7-300(CPU315)做整流系統的 PID 控制,具體 是由 AI 模塊輸入 4-20MA 信號(既 A 柜/B 柜飽和電抗器控制電流信號反饋和機組 A 柜/B 柜直流電流信號反饋),通過 CPU 調用 PID 功能塊,實現自動閉環控制,最后由 AO 模塊 輸出一個 4-20MA 的信號給穩流系統(既 A 柜/B 柜電流給定反饋)。
現請教:1、具體應調用 S7 的 PID 中的哪些功能塊。我是直接在 OB1 里邊調用 FB41,不 知可否。
2、PID 標準塊 FB41 的輸入輸出參數如何整定,PV_PER、SP_INT、PV_IN 有何區別。
3、GAIN、TI、TD 如何整定。
4、MAN_ON、PVPER_ON 怎么用,是直接在 FB41 的輸入端寫嗎?
答:原理上,PID 的調節節奏應該與其采樣周期一致,這是數學模型應與物理過程一致的要 求。這也就是 FB41 要在 OB35 中周期調用且 OB35 的周期要與 FB41 采樣周期一致的原因。
當然,在 OB1 或其他 FC、FB 中調用 FB41 也是可以的,此時最好將 OB1 參數區中掃描周 期作為 FB41 的采樣周期。
本人在管道恒流恒壓的 PID 過程控制中,也曾在 FC 中無條件連續調用 FB41,PID 效果也 還令人滿意。我個人認為,精度要求不高的應用中,簡單調用也是可以的。
FB41 參數的設置很靈活,可根據自己的習慣或應用的方便選擇。下面是一種方式。
MAN_ON :激活 PID 手動調節給定值 MAN 的使能位,可用 PID 手自動轉換位來觸發。 PVPER_ON :是 PID 輸入輸出參數“PERIPHERAL 化”的使能位,即將參數看成 0~27648 之間的整數。換個說法,就是 PID 的反饋值直接取自相應 AIW 通道,而 PID 輸出則直接給 出到 AQW 通道。參數整定由 FB41 完成。可用調節裝置的啟動標志來觸發本位。
MAN :PID 手動調節給定值,當“MAN_ON=1”時有效。
CYCLE :采樣周期。根據物理量變化快慢定,一般要求與 FB41 執行的周期一致。
SP_INT:PID 的設定值。注意設定值與反饋值的單位一致。為了避免錯誤,建議將 SP_INT
轉換為-100.0~100.0%之間無量綱的百分數,輸入到 FB41 時,注意只取百分號之前的數即可。
PV_PER:PID 過程的反饋值,直接取自反饋量的 AIW 通道的 A/D 碼。僅在“PVPER_ON=1”時有效。 GAIN:比例系數。 TI:積分時間。 TD:微分時間。
LMN_PER:PID 的調節輸出,直接對應調節輸出 AQW 通道。
設置了上述參數,基本的 PID 調節就可以實現了。根據需要再完善其他參數的設置,比如 死區的設定等。
利用 STEP7 中的 PID 賦值工具可形象快捷地完成參數設置,結果直接存入相應背景數據塊,
FB41 調用時無須再賦值。
7. 除 300 中的密碼
問:我在使用 CPU313C-2PTP 時,往 PLC 里下了一個程序,開始還好使,可下載了幾次之后, 竟然要求密碼!本人申明,程序沒加密,而且本人還不知如何加密!請問大蝦, 如何清空PLC 的程序而不需要密碼?
答:你需要對 MMC 卡進行格式化操作。格式化過程如下:
1. 將開關置為“MRES ”位置,并保持,直至 LED 停止閃亮(即直至大約 9 秒鐘后永亮 著)。
2. 在隨后的 3 秒內,釋放開關,并再次切換為“MRES ”位置。STOP LED 現在閃亮, 指示正在進行格式化。
一定要使用規定的操作順序。否則,MMC 就不能進行格式化,而是返回存儲器復位狀態。 我建議你在
http://www.ad.siemens.com.cn/download/manual/as.asp 上下載 S7-300C 的所有資料仔 細讀一讀 才進行以 上操作, 在《 S7-300 可編程控制器 CPU 312C 至314C-2DP/PtP CPU 技術參數》一書上有此操作的詳細說明,并有注意事項!請注意。
8. 00 的 L 指令
問:L 指令裝一個立即數(常數)到 ACCU1L 1
如何表達我這個裝入的數是 Byte? Word? DWord? S7300 還未入門,請高手指教!
答:在裝入的時候,如果被裝入的數太短,達不到 4BYTE(大多情況這樣),則在裝入的 時候,會自動填 0而在取出的時候,如果目標是 4BYTE,則全盤復制,如果短了,就只復制需要的長度,另外的就被拋棄了,其實被拋棄的部分一般是 0 的,編程時候需要知道的。 比如 L L#16#01020304,這是一個 32 位的 DWORD然后 T MW0,長出的部分被丟掉,最終 MW0 的內容為 16#0304 除非有意這樣做,否則做之前是要保證數據沒有溢出的。否則計算就亂套了。 反過來,L 16#FFFE (INT -2)T MD0則 MD0 的值為 L#16#0000FFFE (DINT 65534) 數據雖然沒有溢出,但數據格式不能繼承了。 這種時候,分別需要 DTI 和 ITD 命令進行轉換。
至于 200 里面的 MOVB,MOVW,MOVD 等的命令,我想,在 300 里面它是自動的,根據目 標數的尺寸,自動實現不同的 MOVE 功能,與 200 對應。
9. SB 接口和 S7-200 及 S7-300 連接的體會
我最近換了一個新筆記本,沒有串口,最后發現它不能和 S7-200 及 S7-300 連接,急得我只冒汗(差一點兒吐血了),不過最終都搞好了,現把我的體會說一下,以供大家參考。
S7-200 連接過程:
1:安裝 200 軟件,連接,不行。
2:在本網站上下載延時補丁程序,安裝后連接,不行。
3http://www4.ad.siemens.de/WW/lli ... lang=en&objId=7
843251 下載了一個延時程序,安裝,行!
S7-300 連接過程(版本為 step7-5.2):
1:安裝 300 軟件,連接,不行。
2:查看各種資料、檢查各種設置、咨詢各種人員、連接,不行。
3:最后安裝 windows2000 的補丁程序(SP2),連接,行(好高興啊!) 綜上所述:
1:先要保證你的 USB 口轉串口在硬件上和軟件上(就是驅動)沒有問題。
2:200 要下載能解決問題的延時補丁程序。
3;300 要下載合適的電腦操作系統的補丁程序。
.
10. lc 程序的下載問題
問:在一個網絡中(比如 profibus),有多個 plc,在 step7 中硬件組態中也有 多個 plc,所編程序是整個網絡系統的程序,那么程序下載的時候,如何確定哪 些程序被下載到哪一個 plc 中?
答:MPI 網絡中多個 CPU(S7-300/400)及 HMI PANEL(WINCE BASED)的程序下載
1. 按照你所需要的網絡,完成硬件安裝及通訊線的連接.
2. 對所有的 CPU,默認地址都是 2,所以可以分別上電,下載硬件配置與程序.
3. 對于 PANEL 可以通過其控制面板的 S7-TRANSFER 設置網絡地址,然后通過 MPI 網絡直接下載 PANEL 的組態程序.注意,此時 S7-TRANSFER 中的’ONLY MASTER ON THE BUS’不能被 選中.
4. 當使用 CP5511/5611 以點對點的方式對 PANEL 下載程序時,S7-TRANSFER 中的’ONLY MASTER ON THE BUS’必須被選中。