JP2000222008A - プログラマブルコントローラi/oユニットデバッグ装置 - Google Patents

プログラマブルコントローラi/oユニットデバッグ装置

Info

Publication number
JP2000222008A
JP2000222008A JP11021049A JP2104999A JP2000222008A JP 2000222008 A JP2000222008 A JP 2000222008A JP 11021049 A JP11021049 A JP 11021049A JP 2104999 A JP2104999 A JP 2104999A JP 2000222008 A JP2000222008 A JP 2000222008A
Authority
JP
Japan
Prior art keywords
unit
mpu
cpu
program
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP11021049A
Other languages
English (en)
Inventor
Takashi Mishina
隆 三品
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyo Electric Manufacturing Ltd
Original Assignee
Toyo Electric Manufacturing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyo Electric Manufacturing Ltd filed Critical Toyo Electric Manufacturing Ltd
Priority to JP11021049A priority Critical patent/JP2000222008A/ja
Publication of JP2000222008A publication Critical patent/JP2000222008A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

(57)【要約】 【課題】 I/Oユニット内に特別な開発支援装置やシ
リアル通信装置などのハードウェアを使用せずにマイク
ロプロセッサのプログラムデバッグが可能であり、また
不具合が発生した場合でもプログラムの実行状態でMP
U内部の動作確認が可能であるなどの改良にある。 【解決手段】 メインCPUユニットの内部にCPU
と、シリアル通信ポートと、バスインタフェースとを設
け、I/Oユニットの内部にMPUと、MPUとCPU
とを接続するためのデュアルポートRAMと、バスイン
タフェースとを設け、プログラミングコンソールからI
/Oユニット内部MPUのプログラムの実行制御および
確認をするためのMPUデバッグ手段を、前記バスイン
タフェースとデュアルポートRAMとメインCPUユニ
ットを経由するよう構成したものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はマイクロプロセッサ
制御に使用されるプログラムデバッグ装置に関するもの
である。
【0002】
【従来の技術】マイクロプロセッサを使用した制御用プ
ログラムを開発する場合、プログラム開発支援装置を使
用するのが一般的である。この場合、開発支援装置の機
能を利用してプログラムの開発、試験及び検証が可能で
あるのでI/Oユニットのハードウェア回路設計は必要
な機能のみ考慮し、試験のための機能については特別に
考慮しなくともよかったが、開発終了後、プログラムに
不具合が生じた場合、前記プログラム開発支援用装置に
より不具合箇所を調査解析し、再び読出専用メモリに書
込み、搭載する必要があった。特に小規模I/Oユニッ
トの場合はプリント基板実装面積が小さく、プログラム
開発支援用装置の接続すら困難なこともあり、限られた
I/Oポートを使用してプログラム動作の確認のための
手段を構築することもできるが、I/Oユニット毎に別
々に開発せざるをえず非効率的なことであった。
【0003】
【発明が解決しようとする課題】前記マイクロプロセッ
サシステムにおいて、制御プログラムを開発し、制御動
作を確認するためにはプログラム開発支援装置を必要と
しているが、小規模I/Oユニットの場合は開発支援装
置を接続することが不可能な場合がある。また開発支援
装置を接続することにより、プログラム実行確認の環境
が変ってしまい、実際の使用環境と同一にはならない場
合が多くある。またプログラムデバッグ装置を内蔵する
場合、このための専用I/Oポートをあらかじめハード
ウェア設計段階からいれておく必要があるが、通常は使
用することもなく、必要のないハードウェアを内蔵して
おくのは製品のコストを上げるものであり、また資源の
無駄にもなる。本発明は上述した点に鑑みて創案された
もので、その目的とするところは、これらの欠点をプロ
グラマブルコントローラI/Oユニットデバッグ装置を
提供することにある。
【0004】
【課題を解決するための手段】つまり、その目的を達成
するための手段は、メインCPUユニット1と分割され
たI/Oユニット2とを接続するためにベースユニット
5を使用するプログラマブルコントローラにおいて、メ
インCPUユニット1の内部にCPU11と、CPU1
1とプログラミングコンソール4を接続するためのシリ
アル通信ポート15と、CPU11とI/Oユニット2
とを接続するためのバスインタフェース16とを設け、
I/Oユニット2の内部にMPU21と、MPU21と
CPU11とを接続するためのデュアルポートRAM2
7と、バスインタフェース26とを設け、プログラミン
グコンソール4からI/Oユニット2内部MPU21の
MPUデバッグ手段34を、メインCPUユニット1を
経由して提供することを特徴とするプログラマブルコン
トローラI/Oユニットデバッグ装置である。本発明に
よれば、プログラマブルコントローラにあらかじめハー
ドウェア設計段階から必要としていたハードウェアだけ
でI/OユニットMPUのデバッグ装置を提供すること
が可能であり、前記課題を解決することができる。以
下、本発明の一実施例を図面に基づいて詳述する。
【0005】
【発明の実施の形態】図1は本発明の適用PLC(プロ
グラマブルロジックコントローラ:以下省略)システム
ブロック全体図で、ベースユニット5に搭載されたメイ
ンCPUユニット1および複数のI/Oユニット2は電
源ユニット6に供給される電源により外部制御対象機器
3を制御するのが目的である。本システムにおいて外部
制御対象機器3は種々雑多のものがあり、接続方式も色
々な方法があるため、I/Oユニット2の種類も多くな
っており、また使用する数も多くなるのが一般的であ
る。この場合、特に複雑な制御が要求される通信インタ
フェースの場合はMPUを使用したストアードプログラ
ム方式により、外部制御対象機器3とのインタフェース
機能を実行している。
【0006】図2は本発明の適用PLCシステムブロッ
ク図主要構成要素詳細図で、以下これについて説明す
る。メインCPUユニット1のCPU11は読み出し専
用メモリ(以下ROMと称する。)ROM14に記憶さ
れたシステムプログラムと、随時書込可能メモリ(以下
RAMと称する。)RAM13に記憶されたシステム情
報と、RAM12に記憶されたアプリケーションプログ
ラムおよび、アプリケーションデータ情報に基づいてベ
ースユニット5に搭載されたI/Oユニット2のデュア
ルポートRAM(以下DP−RAMと称する。)DP−
RAM27へバスインタフェース(以下BUS−I/F
と称する。)BUS−I/F16およびBUS−I/F
26を通してデータ転送しハンドシェークする。
【0007】I/Oユニット2のMPU21はROM2
3に記憶されたI/Oユニット固定のプログラムと、R
AM22に記憶された一時記憶情報とDP−RAM27
に記憶されたメインCPUユニット1からの制御情報に
基づきI/Oポート24を制御し外部制御対象機器を制
御するのが目的である。プログラミングコンソール4は
メインCPUユニット1内のRAM12に記憶するアプ
リケーションプログラムおよびアプリケーションデータ
情報をシリアル通信ポート15を通じて書込/読み込み
作業を実施するためのもので、通常はRAM12のアプ
リケーション情報についてのアクセス以外は許可されな
い。
【0008】これはアプリケーション情報以外のシステ
ム情報を誤って変更すると異常な動作を起こし外部制御
対象機器の動作に異常を来すのを防止するためのもので
ある。メインCPUユニット1のアプリケーションプロ
グラムをデバッグする場合、プログラミングコンソール
4を使用してROM14に記憶されたシステムプログラ
ムおよびRAM13に記憶されたシステム情報に基づい
てCPU11の管理下でアプリケーションプログラムお
よびアプリケーションデータ情報を変更し、作業をすす
めることにより可能である。
【0009】I/Oユニット2のプログラムはROM2
3に記憶されており、通常は変更することが不可能であ
り、専用の開発支援装置を外部に取り付けデバッグする
か、開発支援装置を使用しないで内部にデバッグ機能を
保有してもI/Oポート24経由で外部から制御する方
法がとられていた。
【0010】図3はROM23のプログラムを専用の開
発支援装置なしにデバッグする場合の本発明による構成
図で、プログラミングコンソール4はメインCPUユニ
ット1のアプリケーションプログラムの開発支援用とし
て使用していたものをハードウェア部分のみを一時的に
利用し、ごく一般的なシリアル通信手段31を実行して
CPUユニット1のシリアル通信ポート15と接続し、
CPU11内のCPU内接続手段32を起動操作してI
/Oユニット2内のDP−RAM27との通信を確保
し、I/Oユニット2内のI/O内接続手段33によっ
てDP−RAM27とMPU21内に内蔵されたMPU
デバッグ手段34とを接続するものである。
【0011】図4はCPU11とMPU21のメモリマ
ップで、CPU11側のメモリマップ41のほうがMP
U21側のメモリマップ42より大きいのが一般的であ
るが、DP−RAM27の部分はいずれの側から見ても
同一のサイズのメモリ空間として共有することが可能と
なる。DP−RAM27の大部分は本来の目的であるメ
インCPUユニット1からI/Oユニット2へ転送され
る制御データ領域として利用されるが、CPU内接続手
段32用としては一例として2バイト分およびI/O内
接続手段33用としては一例として2バイト分を割当て
本機能を提供することに利用している。
【0012】ここでCPU11側のX番地メモリはCP
U11からMPU21へのコマンドデータ転送領域でC
PU11がコマンド要求する度に書込み、逆にMPU2
1側はY番地メモリとして読み込み、CPU11からの
コマンド要求として認識することが可能である。一方C
PU11側のX+2番地メモリはMPU21がコマンド
の実行結果を書込むためのMPU21側のY+2番地に
書込んだレスポンスデータをCPU11側で読み込むた
めのものである。シリアル通信手段31はプログラミン
グコンソール4を一時的に一般的なターミナルモードに
するための手順でプログラミングコンソール4のキーボ
ートをキーインした信号がシリアル送信されメインCP
Uユニット1のS−I/O15に伝達され、逆にシリア
ル通信ポート15から送信されたシリアル信号はプログ
ラミングコンソール4の画面に表示されるだけのもので
特別な機能はもっていない。
【0013】図6はCPU11に内蔵されるCPU内接
続手段32に関するプログラムのフローチャートでプロ
グラミングコンソール4からのシリアル通信手段31か
らの特別に決めたフォーマットに基づいて起動される。
図5はプログラミングコンソール4の画面上に表れたコ
マンド文字列の一例でプロンプト”>”51はCPU1
1に搭載されたマルチタスクモニタからのコマンド受け
付け準備信号で操作者はこれに基づき以下のコマンド文
字列を入力する。
【0014】”803FFC”52はCPU11からの
アドレスXの実アドレスを表し、”,”53は区切り記
号を表し、”803FFE”54はCPU11からのア
ドレスX+2の実アドレスを表し、”;”55は区切り
記号を表し、”02N”56は終了文字コードを表
し、”>”57はCPU11に搭載されたマルチタスク
モニタからのコマンド受信終了信号である。前記”80
3FFC,803FFE;02N”コマンド文字列を受
信すると、図6のフローチャートが起動(61)され、
以下フローに添って説明する。
【0015】CPU11はまずシリアル通信ポート15
からのデータが受信されたか確認(62)し、受信して
いなければ66ステップへジャンプするが、受信してい
れば終了コード56かどうか確認する(63)。もし終
了コードと一致していれば終了となり、マルチタスクモ
ニタへ再びもどり終了となる。終了コードでなければ、
CPU11側のDP−RAMアドレス”X”(図5の場
合は803FFC番地)の内容を確認し(64)、X番
地が”0”でなければMPU21が処理中であるので”
0”になるのを待つ。”0”となればシリアル通信ポー
トからの受信データをX番地に書込み(65)、受信側
の処理は終了となる。
【0016】送信側の処理はまずCPU11側のDP−
RAMアドレス”X+2”(図5の場合は803FFC
番地)の内容を確認(66)することから始る。ここ
で、X+2番地の内容が”0”であればMPU21から
のデータを受信していないので再び62ステップにもど
りループするが、”0”以外であればMPU21からの
データがあるので、これを読取りSーI/O15に送信
可能か確認し(67)、送信可能であればX+2番地の
内容をシリアル通信ポート15に送信する(68)。送
信した後はX+2番地を受信したことを表現するため
に”0”を書込み(69)再び62ステップにもどりル
ープする。
【0017】図7はI/Oユニット2のI/O内接続手
段33のプログラムのフローチャートでMPUデバッグ
手段34とのインタフェース部分となっている。プログ
ラムの開始(71)は割込み信号を使用しても可能であ
るが、MPUデバッグ手段34がマルチタスクモニタと
なっていれば1つのタスクとして表現することが可能で
あるので以下このフローに基づき説明する。
【0018】まずMPU21側のDP−RAMアドレス
Y番地の内容を確認(72)し、内容が”0”であれば
CPU11からのコマンドが何もないので、処理せず再
び72ステップへジャンプしループするが、”0”以外
であればCPU11からのコマンドがあるので、Y番地
の内容を読み込み(73)、読み込んだ意味を表現する
ためにY番地に”0”を書込む(74)。次にMPUデ
バッグ手段34のコマンドバッファが空であるか確認
(75)し、前回のコマンドが終了するまで待つ。
【0019】コマンドバッファが空であればコマンドバ
ッファへY番地で読み込んだデータを書込む(76)。
次にコマンドを実行完了したか確認(77)し、完了し
ていればY+2番地の内容が”0”かどうか確認し(7
8)、CPU11が前回の実行結果を読み込んだか確認
する。”0”であれば実行結果をY+2番地に書込(7
9)み、再び72ステップへジャンプしループする。M
PUデバッグ手段34はI/Oポートとしてシリアル通
信を使用した一般的なMPU用のデバッグツールであ
り、シリアル通信部分を本CPU内接続手段33に置き
換えただけである。
【0020】図8はMPUデバッグ手段34のフローチ
ャートで、I/O内接続手段33からのコマンドを受信
するごとに実行され、各コマンド毎にその内容を実行す
る。各コマンドは1文字毎に実行内容を割当て、たとえ
ば”0〜9”および”A〜Fは数値データ入力コマンド
を意味し、プログラミングコンソールから”0〜9,A
〜F”を入力することにより数値データ入力手段を提供
し、”/”はメモリデータ読み出しコマンドを意味し、
プログラミングコンソールから”/”を入力することに
より読み出し手段を提供し、”↓”(キャリッジリター
ン)はメモリデータ変更コマンドを意味し、プログラミ
ングコンソールから”↓”(キャリッジリターン)を入
力することにより、メモリ内容変更手段を提供し、”
R”はレジスタ内容表示コマンドを意味し、プログラミ
ングコンソールから”R”を入力することによりレジス
タ内容表示手段を提供し、”ESC ”は実行停止コマンド
を意味し、プログラミングコンソールから”ESC ”を入
力することにより実行停止手段を提供し、”G”は実行
コマンドを意味し、プログラミングコンソールから”
G”を入力することにより実行手段を提供している。
【0021】I/O内接続手段33から呼出されると
(81)、まず、数値データ入力コマンドであるか確認
し(82)、数値データ”0〜F”であれば、数値デー
タ入力処理を実行する(83)。数値データ入力コマン
ドでなければ”/”コマンドかどうか確認し(8
4)、”/”コマンドであれば現在入力されている数値
データをアドレスとみなして当該アドレスのメモリデー
タを読み出し出力する(85)。”/”コマンドでなけ
れば”↓”コマンドかどうか確認し(86)、”↓”コ
マンドであれば現在数値データ入力されている値を、読
み出しコマンドを実行したメモリアドレスに変更処理す
る(87)。
【0022】”↓”コマンドでなければ”R”コマンド
かどうか確認し(88)、”R”コマンドであればMP
Uのレジスタ内容を出力処理する(89)。”R”コマ
ンドでなければ”ESC”コマンドかどうか確認し(9
0)、”ESC”コマンドであればMPUの制御プログラ
ムを停止させ(管理プログラムのみとする。)(9
1)、停止した時の状況を出力処理する(92)。”ES
C ”コマンドでなければ”G”コマンドであるか確認し
(93)、”G”コマンドであればMPUの停止状態か
ら現在の数値データ入力コマンドで入力されているアド
レスを起動開始アドレスとしてセットしMPUを再起動
させる(94)。”G”コマンドでなければ登録外のコ
マンドとしてエラー出力し(95)、終了する(9
6)。
【0023】
【発明の効果】以上述べたように本発明によれば、I/
Oユニット内に特別な開発支援装置やシリアル通信装置
などのハードウェアを使用せずにマイクロプロセッサの
プログラムデバッグが可能であり、複数のI/Oユニッ
トに搭載されたMPUのプログラムを1台のプログラミ
ングコンソールからデバッグ可能であるので、プログラ
ム開発の効率をあげることができる。また不具合が発生
した場合でもプログラムの実行状態でMPU内部の動作
確認が可能であり、高い信頼性の製品を提供することが
可能であり、実用上、極めて有用性の高いものである。
【図面の簡単な説明】
【図1】適用PLCシステムブロック全体図である。
【図2】適用PLCシステムブロック主要構成要素詳細
図である。
【図3】MPUデバッグ系統図である。
【図4】CPU(11)/MPU(21)間メモリマッ
プである。
【図5】プログラミングコンソール入力例図である。
【図6】CPUユニット内接続手段フローチャートであ
る。
【図7】I/Oユニット内接続手段フローチャートであ
る。
【図8】MPUデバッグ手段フローチャートである。
【符号の説明】
1 CPUユニット 2 I/Oユニット 3 制御対象機器 4 プログラミングコンソール 5 ベースユニット 6 電源ユニット 11 CPU 12 アプリケーションプログラムメモリ(RAM) 13 システムデータメモリ(RAM) 14 システムプログラム(ROM) 15 シリアル通信ポート(S−I/O) 16 バスインタフェース(BUS−I/F) 21 マイクロプロセッサ(MPU) 22 随時書込可能メモリ(RAM) 23 読み出し専用メモリ(ROM) 24 I/Oポート 26 BUS−I/F 27 DP−RAM 31 シリアル通信手段 32 CPU内接続手段 33 I/O内接続手段 34 MPUデバッグ手段 41 CPU内メモリマップ 42 MPU内メモリマップ 51 プロンプト 52 X番地アドレス入力文字列 53 区切り記号 54 Y番地アドレス入力文字列 55 区切り記号 56 終了コード入力文字列 57 コマンド受信完了コード 61〜69 CPU内接続手段フローチャート 71〜79 I/O内接続手段フローチャート 81〜96 MPUデバッグ手段フローチャート

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 メインCPUユニット(1)と分割され
    たI/Oユニット(2)とを接続するためにベースユニ
    ット(5)を使用するプログラマブルコントローラにお
    いて、メインCPUユニット(1)の内部にCPU(1
    1)と、CPU(11)とプログラミングコンソール
    (4)を接続するためのシリアル通信ポート(15)
    と、CPU(11)とI/Oユニット(2)とを接続す
    るためのバスインタフェース(16)とを設け、I/O
    ユニット(2)の内部にMPU(21)と、MPU(2
    1)とCPU(11)とを接続するためのデュアルポー
    トRAM(27)と、バスインタフェース(26)とを
    設け、プログラミングコンソール(4)からI/Oユニ
    ット(2)内部MPU(21)のプログラムの実行制御
    および確認をするためのMPUデバッグ手段(34)
    を、前記バスインタフェース(16)、(26)とデュ
    アルポートRAM(27)とメインCPUユニット
    (1)を経由して提供することを特徴とするプログラマ
    ブルコントローラI/Oユニットデバッグ装置。
JP11021049A 1999-01-29 1999-01-29 プログラマブルコントローラi/oユニットデバッグ装置 Pending JP2000222008A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11021049A JP2000222008A (ja) 1999-01-29 1999-01-29 プログラマブルコントローラi/oユニットデバッグ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11021049A JP2000222008A (ja) 1999-01-29 1999-01-29 プログラマブルコントローラi/oユニットデバッグ装置

Publications (1)

Publication Number Publication Date
JP2000222008A true JP2000222008A (ja) 2000-08-11

Family

ID=12044076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11021049A Pending JP2000222008A (ja) 1999-01-29 1999-01-29 プログラマブルコントローラi/oユニットデバッグ装置

Country Status (1)

Country Link
JP (1) JP2000222008A (ja)

Similar Documents

Publication Publication Date Title
KR940002324B1 (ko) 프로그래머블 콘트롤러
US7543277B1 (en) Method and system for remote software debugging
US5652886A (en) System for loading a boot program into an initially blank programmable memory of a microprocessor using state machine and serial bus
EP0814404A1 (en) Debugging apparatus for debugging a program
CN114281394A (zh) 一种快速在线升级程序的方法、系统、设备及介质
CN105653306A (zh) 显示启动设置界面的方法和装置
US7249172B2 (en) System for remotely loading and remotely maintaining an electronic card
CN109739769A (zh) Bootrom加载功能自动化测试方法及装置
JP3456692B2 (ja) データ処理装置
US6904484B1 (en) Low pin count (LPC) firmware hub recovery
CN114817115A (zh) 串口通信方法及相关装置
JP2005070950A (ja) プログラム処理装置
CN115242753B (zh) 网卡mac地址烧录方法、系统、电子设备与存储介质
US5655111A (en) In-circuit emulator
JP2000222008A (ja) プログラマブルコントローラi/oユニットデバッグ装置
JP2907808B1 (ja) フラッシュメモリエミュレーション装置及びそれを用いたデバッグシステム
US7089140B1 (en) Programmable logic device and method of testing a programmable logic device
JP4479131B2 (ja) 制御装置
CN110737480A (zh) 一种串口驱动程序复用方法和装置
JP2584903B2 (ja) 外部装置制御方式
JP2002006910A (ja) 更新機能付きプログラマブルコントローラおよびプログラマブルコントローラの機能拡張ユニットの機能更新方法
CN113434163B (zh) 适用于电子控制单元的在线标定方法、系统、设备及介质
US7543307B2 (en) Interface method and device having interface for circuit comprising logical operation element
US5680646A (en) Input/output control system
JPH1083273A (ja) マルチウインドウ制御装置