OOoCalcRTCの仕様
OOoCalcRTCはデータポートの入出力によりセルの値の読み込み、書き込みを行うRTCです。
このため、データポートの数、種類、関連付けするセル等はユーザーが独自に設定できるのが望ましいと言えます。
そのため起動した時点ではサービスポートを1つ持つだけのRTCとして動的にデータポートが増える仕様にしました。
OOoCalcRTCでは、GUIによるデータポートの追加、設定をサポートしています。
GUIにより設定できる項目は、
本RTCをアクティブ化するとDataInPortから入力されたデータを関連付けしたセルに書き込み、DataOutPortから関連付けしたセルの値を出力を行います。
サービスポートとして指定の位置のセルの読み込み、書き込みを行うインターフェースを持っています。
サービスポート
SpreadSheet.spreadsheet(Provided)
指定したセルの値の取得、入力するためのインターフェースです。
FloatList、StringListは独自のデータ型です。
名称 | 引数 | 戻り値の型 | 説明 |
get_string | string l, string c, string sn | string | セルの文字列を取得する。 l:列の番号(アルファベット) c:行の番号(数値) sn:シートの名前 |
set_value | string l, string c, string sn, float v | void | セルに値を入力する。 l:列の番号(アルファベット) c:行の番号(数値) sn:シートの名前 v:入力する値 |
get_string_range | string l1, string c1, string l2, string c2, string sn | StringList | 未実装 |
set_value_range | string l1, string c1, string l2, string c2, string sn, FloatList v | void | 未実装 |
set_string | string l, string c, string sn, string v | void | セルに文字列を入力する。 l:列の番号(アルファベット) c:行の番号(数値) sn:シートの名前 v:入力する文字列 |
set_string_range | string l1, string c1, string l2, string c2, string sn, StringList v | void | 未実装 |
コンフィギュレーション変数
名称 | 型 | デフォルト値 | 説明 |
actionLock | int | 1 | 1でセルの値を変更しているときに画面の更新を止めます。 |
Red | int | 255 | 値を読み込んでいるセルの色 |
Green | int | 255 | 同上 |
Blue | int | 0 | 同上 |
stime | float | 0.05 | サンプリング時間(シミュレーションで使用) |
stCell_row | string | A | シミュレーション時間を表示するセルの列番号 |
stCell_col | int | 1 | シミュレーション時間を表示するセルの行番号 |
stCell_sheetname | string | Sheet1 | シミュレーション時間を表示するセルのシート名 |
本RTCでは実験的にコンフィギュレーションセットを複製するとデータポートが追加されるという機能を導入しています。
datatype0
名称 | 型 | デフォルト値 | 説明 |
data_type | string | TimedFloat | 追加するデータポートのデータ型 |
column | int | 1 | 関連付けするセルの行番号 |
start_row | string | A | 関連付けするセルの列番号 |
end_row | string | A | 関連付けするセルの範囲の終わりの列番号 複数のセルを関連付けする場合、start_rowで設定した列番号からend_rowで設定した行番号のセルまで設定されます。 |
sheetname | string | Sheet1 | 関連付けするセルの存在するシートの名前 |
port_type | string | DataInPort | データポートの種類 DataInPortかDataOutPortを設定できます。 |
c_move | int | 1 | 1の場合はデータの入出力をする度に列を移動します。 |
Attach_Port | string | None | 関連付けするデータポート。データポート(コンフィギュレーションセットの複製を用いて作成したデータポート名はコンフィギュレーションセット名になります)の名前を入力します。複数関連付ける場合は","で区切ってください。"None"と入力した場合は無視します。 |
これらのコンフィギュレーション変数をもつコンフィギュレーションセットを複製することでデータポートを追加できます。
追加できるデータポートのデータ型
追加できるデータポートのデータ型は以下の通りです。
TimedDouble |
TimedLong |
TimedFloat |
TimedShort |
TimedUDouble |
TimedULong |
TimedULong |
TimedUFloat |
TimedUShort |
TimedBoolean |
TimedOctet |
TimedString |
TimedWString |
TimedDoubleSeq |
TimedLongSeq |
TimedFloatSeq |
TimedShortSeq |
TimedUDoubleSeq |
TimedULongSeq |
TimedUFloatSeq |
TimedUShortSeq |
TimedBooleanSeq |
TimedOctetSeq |
TimedStringSeq |
TimedWStringSeq |
TimedRGBColour |
TimedPoint2D |
TimedVector2D |
TimedPose2D |
TimedVelocity2D |
TimedAcceleration2D |
TimedPoseVel2D |
TimedSize2D |
TimedGeometry2D |
TimedCovariance2D |
TimedPointCovariance2D |
TimedCarlike |
TimedSpeedHeading2D |
TimedPoint3D |
TimedVector3D |
TimedVector3D |
TimedOrientation3D |
TimedPose3D |
TimedVelocity3D |
TimedAngularVelocity3D |
TimedAcceleration3D |
TimedAngularAcceleration3D |
TimedPoseVel3D |
TimedSize3D |
TimedGeometry3D |
TimedCovariance3D |
TimedSpeedHeading3D |
TimedOAP |