Pal_Script.py
実行用スクリプト
本スクリプトを起動するためのコードで、主にMONOSTICKからのデータを読み込み、ユーザーが記述するMain()に読み込んだデータを渡します。

読み出し方法

以下のコード例では、都度 MONOSTICK からデータを受信したかどうかを確認し、受信していればMain()に渡す処理を行っています。
1
from apppal import AppPAL
2
3
...
4
5
def mainloop(PAL):
6
global end_flag
7
8
try:
9
from Main_user import Main
10
except:
11
mainflag = False
12
else:
13
mainflag = True
14
15
if PAL.ReadSensorData():
16
if mainflag:
17
Main(PAL)
18
else:
19
PAL.ShowSensorData()
20
21
...
22
23
if __name__ == '__main__':
24
...
25
26
try:
27
PAL = AppPAL(port=options.target, baud=options.baud, tout=0.05, sformat=options.format, autolog=bEnableLog, err=bEnableErrMsg, stdinput=options.stdinp, Logfilename=options.file)
28
except:
29
print("Cannot open \"AppPAL\" class...")
30
exit(1)
31
32
while True:
33
try:
34
mainloop(PAL)
35
except KeyboardInterrupt:
36
break
37
38
del PAL
Copied!
まず、AppPALオブジェクトを生成します。オブジェクト生成時にシリアルポートの設定も行うため、シリアルポートの設定パラメータを引数として渡します。
1
PPAL = AppPAL(port=options.target, baud=options.baud, tout=0.05, sformat=options.format, autolog=bEnableLog, err=bEnableErrMsg, stdinput=options.stdinp, Logfilename=options.file)
Copied!
次にmainloop()でシリアルデータが来ているかどうかを判断するために ReadSensorData() を呼びます。返り値が True だったら、解釈したをMain()に渡します。
1
def mainloop(PAL):
2
# ユーザが処理を記述するMain関数がインポートできるか確認する。
3
try:
4
from Main_user import Main
5
except:
6
mainflag = False
7
else:
8
mainflag = True
9
10
# データがあるかどうかの確認
11
if PAL.ReadSensorData():
12
if mainflag:
13
# Main関数が読めたらPALオブジェクトをMain()に渡す
14
Main(PAL)
15
else:
16
# Main関数が読めなかったらコンソールにデータを表示する。
17
PAL.ShowSensorData()
Copied!
受け取る辞書に関してはここを参照してください。
最終更新 6mo ago
リンクのコピー