ラダー図開発ツールLD Cv!
LD Cv!に関するQ&Aです。
■LD Cv!のトップへ戻る

■目次
Q1.LD Cv!は、Z80互換CPU以外の開発にも使えますか?
Q2.使用するCコンパイラの必要条件は?
Q3.作成したラダー図のスキャンタイム(平均値)を測定したい。
Q4.1回路内に2個以上コイルのある回路が作成できない。
Q5.動作確認済みのCPU・アセンブラ・Cコンパイラは?
Q6.プログラムコメントの編集ができない。
Q7.lad形式のプログラムを結合(マージ)したい。
Q8.タイマの数が足りない。
Q9.挿入モードでプログラム入力後「書込後、読出モード゙に戻る」を実行すると、エラーメッセージが表示されて、書き込めない。


Q1.LD Cv!は、Z80互換CPU以外の開発にも使えますか?ページトップへ

LD Cv!には、ラダー図をC言語に変換する機能があります。
C言語に変換した場合は、Z80以外のCPUも使用可能ですが、ターゲットとなるCPUのコードを出力するCコンパイラが必要です。


Q2.使用するCコンパイラの必要条件は?ページトップへ

ターゲットとなるCPUのコードを出力するCコンパイラであること。
言語仕様としては、ANSI準拠のCコンパイラ(要するに、普通のCコンパイラ)であれば、問題ありません。
LD Cv!は、static、unsignedを使ったコードを生成するため、これらの予約語をサポートしていない簡易型のCコンパイラは使えません。


Q3.作成したラダー図のスキャンタイム(平均値)を測定したい。ページトップへ

作成したラダー図に、図3.2の回路を追加し、M100のON(またはOFF)でLEDが点灯するようにしておくと、LEDが点灯している時間(秒)がスキャンタイム(ms)の平均値となります。

図3.1 スキャンタイム測定回路

たとえば、LEDが4秒間点灯(図3.2)していれば、スキャンタイムの平均値は4msとなります。

図3.2 LEDの点灯時間(4秒)

なお、LEDの点灯時間が短すぎて正確に測定できない場合は、S13の代りにS14を使います。
S14を使った場合、LEDが4秒間点灯(図3.2)していれば、スキャンタイムの平均値は0.4msとなります。


Q4.1回路内に2個以上コイルのある回路が作成できない。ページトップへ

図4.1の回路は、編集時にエラーと判断されるため作成できません。
これは、LD Cv!が「コイルの分岐の縦線」と「接点の分岐の縦線」を縦線の位置によって区別しているためです。

図4.1 作成できない回路

この回路は、図4.2のように縦線の位置を、書き換えてください。

図4.2 作成できる回路

Q5.動作確認済みのCPU・アセンブラ・Cコンパイラは?ページトップへ

現在、動作確認済みのCPU・アセンブラ・Cコンパイラは、次の通りです。

表5 動作確認済みCPU、アセンブラ、Cコンパイラ
CPU
・KL5C80A12(川崎製鉄)
・KL5C80A16(川崎製鉄)

アセンブラ
・YA80(イエローソフト)
・Xa80w(システムロード)

Cコンパイラ
・YC80(イエローソフト)

Q6.プログラムコメントの編集ができない。ページトップへ

プログラムコメントウィンドウ上で、[コメント編集:編集モード]メニューを実行してください。
以降、プログラムコメントを編集できるようになります。


Q7.lad形式のプログラムを結合(マージ)したい。ページトップへ

LD Cv!には、直接プログラムを結合(マージ)する機能はありません。
ただし、次のようにラダー図の「コピー&ペースト」機能と、I/Oコメントの「エクスポート&インポート」機能を使えば同じ効果が得られます。

表7 プログラムの結合(マージ)方法
片方のプログラム(ここでは、p1.ladとする)をLD Cv!に読込む。
回路全体を選択し、[編集:選択範囲コピー]メニューを実行する。
I/Oコメントウィンドウを開き、[コメント編集:CSV形式のコメントデータのエクスポート]を実行し、適当なファイル名(ここでは、p1.csvとする)で保存する。
もう片方のプログラム(ここでは、p2.ladとする)をLD Cv!に読込む。
2でコピーしたラダー図(p1.ladのラダー図)を挿入する位置に、カーソルを移動する。
[編集:この直前にペースト]メニューを実行する。
I/Oコメントウィンドウを開き、[コメント編集:CSV形式のコメントデータのインポート]を実行し、p1.csvを読込む。

Q8.タイマの数が足りない。

カウンタの入力に、クロック信号を与えることで、タイマ動作をさせることができます。
カウンタが余っている場合は、これでタイマ不足を回避することができます。

図8 タイマの代用

図8で、1行目のカウンタC0には、1スキャン毎に反転するパルスが入力されています。
しかし、2行目のM0がOFFの間は、クリア入力がONなので、カウント動作をおこないません。
2行目のM0がONになると、クリア入力がOFFとなり、カウント動作を開始し、カウント値が10で、カウンタC0はONとなります。
つまり、設定値が10、タイムベースがスキャンタイムの2倍、励磁入力をM0とするタイマとして動作します。
タイムベースは、個々のカウンタごとに異なるクロックを設定することが可能なため、この方法で、短時間タイマや長時間タイマを作ることもできます。


Q9.挿入モードでプログラム入力後「書込後、読出モード゙に戻る」を実行すると、エラーメッセージが表示されて、書き込めない。

回路が正しいのもかかわらず、エラー 121(回路接続に誤りがあるか、仕様上の制約」により変換できません)になる場合は、現在編集中のラダー図が複数回路になってる可能性があります。
LD Cv!では、仕様上の制約により、ラダー図の挿入・変更は1回路単位でしか行えません。
1回路単位で、挿入・変更をおこなってみてください。