Step7 ClassicでSFC51を使うことによってCPUから様々な状態を読み込むことができますが、ここでCPUのLED状態を読み込むのプログラム例を示します。まずここでS7-300のLED説明にはここであります:

こうやってLEDの状態を取りもしCPUがエラーがあったり、強制ON/OFFしたりするときHMIとかで表示することも可能ですね。では、まずSFC51はどんなものがみてみましょう。プログラムの中にEMPTY BOX1つを追加し”SFC51”を入力してすれば自動的SFC51が追加されます。そのあとF1を押せばHELPが出てきて色々なINFORMATIONがみえます。簡単からというと、SystemFunction51は”RDSYSST”で、いわゆる”Read System Status”です。このプロッグは以下のParametersがあります:

考えの流れとしてはまずはどんなSystem Status Listがほしいですか?System Status Listの中のどんな情報が欲しいですか?最後はREQのタイミングを決めます。

じゃプログラムをしましょう。最初はSSL_HEADERを作ります。これはSSL_HEADERの標準の構造体です。

新しいDBを作成し、中にWORD2つのデータが含めてるの構造体にします。これでSSL_HEADERが完成です。
![]()
16#0174はLEDのStatusを読み込むんですね。

INDEXにはたくさん書いてますのでここで詳しい説明はしません。今回はRUNのSTATUSを取りますのでINDEXがW#16#0004をします。

次はDR-Data RecordのDB Structureを考えます。SSL_IDによってDRのStructureも違いますのでここはちゃんとMANUALを読んでください。ここでWORD1つ、Byte2つですね。

また新しいDBを作成し、同じのようなStructureを作りましょう。

最後はSFC51を追加します。これだけです。
SZL_HeaderはP#DB[番号].DBX0.0です。
DRはP#DB[番号].DBX0.0です。
完成です。お疲れさまー
*もしTIAを使う場合はLEDを読み込むの命令がありますので次を紹介します。