應用領域 | 化工,電子/電池,電氣 | 產地 | 德國 |
---|---|---|---|
品牌 | 西門子 |
總線周期時間的程序運行。
創建了自動化解決方案,可以以固定間隔時間(常量總線周期時間)捕捉并處理輸入和輸出信號。同時創建了前后一致的部分過程圖像。
借助常量總線周期時間和分布式I/O同步信號處理技術,S7-300確保可以地重現規定的過程響應時間。
為同步模式系統功能提供了極為豐富的支持組件,可以處理運動控制、測量值采集和高速控制等領域的苛刻
![]() |
參考價 | ¥666 |
訂貨量 | 1臺 |
更新時間:2022-11-28 22:16:08瀏覽次數:459
聯系我們時請說明是化工儀器網上看到的信息,謝謝!
西門子驅動模塊6SL3120-1TE24-5AA3
直接從用戶程序中發送認證電子郵件。電子郵件客戶端設計有通知功能,可以在控制程序中直接通知用戶。
通過FTP進行通訊;
大多數操作系統平臺都可以使用的開放協議
設計有30 MB RAM文件系統,可以用作動態數據的中間存儲器。
S7-300 PROFINET CPU集成有Web服務器。因此,標準Web瀏覽器可以讀出S7-300站中的信息:
CPU一般信息
診斷緩沖區的內容
變量表
標簽狀態
模塊的狀態
報文
工業以太網的相關信息
PROFINET節點的拓撲結構
等時模式
使用系統功能“同步模式",可以同步耦合
分布式信號采集、
PROFIBUS信號傳輸和
程序執行
總線周期時間的程序運行。
創建了自動化解決方案,可以以固定間隔時間(常量總線周期時間)捕捉并處理輸入和輸出信號。同時創建了前后一致的部分過程圖像。
借助常量總線周期時間和分布式I/O同步信號處理技術,S7-300確保可以地重現規定的過程響應時間。
為同步模式系統功能提供了極為豐富的支持組件,可以處理運動控制、測量值采集和高速控制等領域的苛刻任務。
在分布式自動化解決方案中,目前的SIMATIC S7-300開始涉足重要的高速加工處理應用領域,并確保可以獲得的和可重現性。這意味著可以以穩定的產品不斷地擴大生產數量。
模塊的診斷和過程監視
SIMATIC S7-300的大量輸入/輸出模塊都具有智能功能:
信號采用的監控(診斷)。
監控來自過程的信號(硬件中斷)。
診斷
診斷功能可以用來判斷模塊的信號采集(針對數字量模塊)或者模擬量處理(針對模擬模塊)是否工作于*狀態。在診斷分析中,必須區分可參數化和非參數化診斷消息:
可參數賦值的診斷報文:
僅由合適的設定參數啟用之后才會發出診斷消息。
不可參數賦值的診斷報文:
這些消息的發出是一個常規事件,即該過程與參數化無關。
如果某個診斷消息處于狀態(例如“無傳感器輸入"),則模塊會發起一個診斷中斷(若已經為該診斷消息設置了參數,則僅在相應的參數化過程之后才會產生中斷)。CPU會中斷用戶程序或較低優先級任務的執行,并接下來執行相關的診斷中斷塊(OB 82)。
數字量輸入/輸出模塊
診斷報文
可能的故障原因
無傳感器輸入
傳感器輸入過載
傳感器輸入至M之間存在短路
無外部輔助電壓
模塊無L+電壓
無內部輔助電壓
模塊無L+電壓
內部模塊保險絲故障
保險絲燒斷
內部模塊保險絲故障
模塊中的參數不正確
傳輸到模塊的參數不正確
時間監控功能已經編址(看門狗)
高電磁干擾
模塊故障
EPROM故障
高電磁干擾
模塊故障
RAM故障
高電磁干擾
模塊故障
硬件中斷丟失
硬件中斷到來的速度超過了CPU的處理能力
模擬量輸入模塊
診斷報文
可能的故障原因
無外部負載電壓
模塊無L+負載電壓
組態/參數化錯誤
傳輸到模塊的參數不正確
共模錯誤
輸入(M-)之間的UCM電壓差和測量回路(MANA)的參考電壓過高
斷路
傳感器回路的電阻過高
模塊和傳感器之間的連接線出現斷路
通道未切換(開)
低于測量范圍的下限
輸入值低于正常范圍,可能因故障所至
量程為4至20 mA,1至5伏:
傳感器極性接反;
量程選擇錯誤
其它量程:
量程選擇錯誤
高于測量范圍的上限
輸入值超出量程
模擬量輸出模塊
診斷報文
可能的故障原因
無外部負載電壓
模塊無L+負載電壓
組態/參數化錯誤
傳輸到模塊的參數不正確
M短路
輸出過載
輸出QV至MANA短路
斷路
執行器電阻過高
模塊和執行器之間的連接線出現斷路
西門子驅動模塊6SL3120-1TE24-5AA3
為保證系統穩定運行,系統CPU應避免長時間滿負荷運作,應用程序CPU占用不宜過高。客戶需要在調試階段監測應用程序各個進程線程占用情況,對占用過高的進程線程進行優化。因CE自身不帶進程線程系統占用查看工具,我們增加了AppHelper助手工具方便客戶使用。
在之前的技術文章《CE應用程序助手簡介》中簡單介紹過英創AppHelper應用程序助手,本文將詳細介紹AppHelper的使用方法。
AppHelper查看方法
客戶在自制底板上只要引出了網絡,USBOTG,DEBUG調試串口,或板子其它串口任意之一便可以查看AppHelper信息。
網絡方式
通過telnet登錄上板子,運行命令sysinfo,即可獲得AppHelper打印的進程線程信息。
telnet模式打印示例圖
USBOTG方式
使用AHC工具(使用方法見本文下一節)配置AppHelper輸出為COM1。連接上板子USBOTG口,板子將以虛擬串口形式被PC識別。使用任意串口工具向該串口輸出任意三個字符(任意波特率),即可獲得AppHelper打印的進程線程信息。
USBOTG,DEBUG及其它串口打印示例圖
DEBUG調試串口方式
使用AHC工具(使用方法見本文下一節)配置AppHelper輸出為DEBUG。連接板子的DEBUG串口,PC端使用任意串口工具,設置波特率115200,向DEBUG口輸出任意三個字符,即可獲得AppHelper打印的進程線程信息。
串口方式
將底板上引出,且客戶應用程序未使用的串口連接上PC。使用AHC工具(使用方法見本文下一節)配置好串口號及波特率。PC端使用任意串口工具,用設定的波特率向該串口輸出任意三個字符,即可獲得AppHelper打印的進程線程信息。
AHC工具使用介紹
AHC工具即AppHelper Config工具,用于設置AppHelper打印信息的輸出位置。有兩種辦法進行設置。
控制面板方式
在板子控制面板中運行AHC工具。
選擇好輸出信息的串口及波特率(其中COM1為USBOTG),點擊OK鍵保存配置,板子重啟后配置生效。
telnet方式
通過telnet登錄上板子,執行命令AHC port [baud]
參數port:串口號,值為0-6,0表示DEBUG串口,1表示USBOTG轉虛擬串口,2-6分別表示板子的COM2-COM6。
參數baud:波特率,可選參數,如果不填表示保持原波特率,支持1200,2400,4800,9600,19200,38400,57600,115200。當port為0時,baud固定為115200,當port為1時,baud值不生效。
命令執行后,DEBUG口可以看到打印提示信息。
打印格式說明
打印結果為數行,其中每行的格式均為:類型 ID號 占用情況 名稱
以下圖一次打印的部分截圖為例:
類型
PID表示為process進程。TID表示為上面進程下的thread線程。
ID號
即進程ID值或線程ID值。
占用情況
顯示格式為 K n% U m% total%
n值為該進程或線程在Kernel系統層的占用
m值為該進程或線程在User用戶層的占用
total值為總占用,它應當等于n+m的和
進程下各個線程total占用和應當等于進程的total占用
名稱
進程名即EXE的名稱,線程默認沒有名稱,下一節會介紹如何給線程命名,從而能在AppHelper中顯示出來。
進程及線程監視說明
AppHelper會打印系統下所有的進程的CPU占用信息。
只有在\NandFlash目錄下的exe生成的進程會額外打印出它下面所有線程的CPU占用信息。
默認情況下,生成的線程只有ID號,沒有名稱,如果線程較多會不便于查看。我們可以通過簡單代碼給線程命名。
以光盤里的串口例程SPT_HEX為例:
添加一個結構體的定義
typedef struct _THREAD_INDEX
{
DWORDdwSize;
DWORDdwThreadID;
TCHARszThreadName[32];
_THREAD_INDEX*pNext;
}THREAD_INDEX;
在創建線程后給線程命名
這里把串口接收線程命名為"CommRecvTread"
hRecvThread = CreateThread(0, 0, CommRecvTread, this, 0, &m_dwTID);
HANDLE hHLP;
DWORD dwLen;
hHLP = CreateFile(L"HLP1:", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
THREAD_INDEXthreadIndex;
wsprintf(threadIndex.szThreadName, L"CommRecvTread");
threadIndex.dwThreadID = m_dwTID;
threadIndex.dwSize = sizeof(THREAD_INDEX);
WriteFile(hHLP, &threadIndex, sizeof(THREAD_INDEX), &dwLen, NULL);
CloseHandle(hHLP);
在結束線程后取消命名
線程結束后應當手動將命名取消掉,避免不必要的顯示錯誤,設置線程名為空,即可取消原命名。
HANDLE hHLP;
DWORD dwLen;
hHLP = CreateFile(L"HLP1:", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
THREAD_INDEXthreadIndex;
wsprintf(threadIndex.szThreadName, L"");
threadIndex.dwThreadID = m_dwTID;
threadIndex.dwSize = sizeof(THREAD_INDEX);
WriteFile(hHLP, &threadIndex, sizeof(THREAD_INDEX), &dwLen, NULL);
CloseHandle(hHLP);
命名線程后再使用AppHelper查看,啟動接收線程后,就可以看到CommRecvTread這個線程,另外個沒有命名的線程為SerialPort程序的主線程。