diff --git a/lib/File.blockly b/lib/File.blockly index 658a354e28285ba34f3bddbebf0d54aefeb7da66..98b772e8675af608c5e0c2c31f77414e4336beb3 100644 --- a/lib/File.blockly +++ b/lib/File.blockly @@ -14,7 +14,6 @@ <variable id="0*rgTj2O4/)Q@i|9XZ`3">calib_data_VGR</variable> <variable id="}+G;?`L|R%?sGFhd=Dy@">calib_data_DPS</variable> <variable id="I(%pOg6My*c;G}[1Dc^C">calib_data_SLD</variable> - <variable id="a*v8UOjM9uFtoNA^u;d2">file</variable> </variables> <block type="util_python_imports" id="V6K{0l(G9rYO[ebX(2Rg" x="0" y="0"> <field name="value">import json&#10;import logging&#10;import subprocess</field> @@ -321,104 +320,53 @@ </block> </value> <next> - <block type="util_python" id=":$+Pe._w42=pGv!!r+M3" inline="true"> - <field name="value">#write backup to usb stick</field> + <block type="util_python" id="h+c/cbWJp[TLFFN9`$$q" inline="true"> + <field name="value">#try to write a backup to usb stick&#10;try:&#10; fileUSB = open('/opt/ft/workspaces/ext_usb/sda/'+controller_name, 'w', encoding='utf8')&#10; fileUSB.close()&#10; fileCalib = open('/opt/ft/workspaces/ext_usb/sda/FactoryCalib.json', 'w', encoding='utf8')&#10; fileCalib.write(calib_json)&#10; fileCalib.close()&#10;except IOError as e:&#10; print(e)</field> <next> - <block type="util_python" id="h+c/cbWJp[TLFFN9`$$q" inline="true"> - <field name="value">file = open('/opt/ft/workspaces/ext_usb/sda/'+controller_name, 'w', encoding='utf8')&#10;file.close()</field> + <block type="util_python" id="Izs2GXFiON#$#Yl{Q8;1" inline="true"> + <field name="value">#write backup if usb stick available</field> <next> - <block type="variables_set" id="Hh])TIbceD-T4s=U(Ju{"> - <field name="VAR" id="a*v8UOjM9uFtoNA^u;d2">file</field> - <value name="VALUE"> - <block type="open_file" id="8O[+A-:lXCVITgnNnQGD"> + <block type="controls_if" id="09=a@^dj}r4pu#WD/eA6"> + <value name="IF0"> + <block type="exist_file" id="I7|+c5i*^F2*?:6N5#yo"> <field name="path">/opt/ft/workspaces/ext_usb/sda/FactoryCalib.json</field> - <field name="mode">w</field> </block> </value> - <next> - <block type="variables_set" id="eUP8hbOa+CNHbJPufDoP"> + <statement name="DO0"> + <block type="variables_set" id="K*DH,4qh!p;ur/6|~F[h"> <field name="VAR" id="~VV%d%niWCJE,.rkhq+F">fileCalib</field> <value name="VALUE"> - <block type="open_file" id="_u]3(uYacxd)2TO`%-D="> - <field name="path">/opt/ft/workspaces/ext_usb/sda/FactoryCalib.json</field> + <block type="open_file" id="yVNjYQ8Th%ZaX#4A|f~J"> + <field name="path">/opt/ft/workspaces/FactoryCalib_backup.json</field> <field name="mode">w</field> </block> </value> <next> - <block type="write_file" id="Qc^18_nP]mh:/Y],,!RI"> + <block type="write_file" id="5Aks_^CG:3r|wT@(n;^X"> <field name="new line">FALSE</field> <value name="value"> - <block type="variables_get" id="i~,3dtDvV~5c3@$0K:/6"> + <block type="variables_get" id="RRF]jvzKJCYMj;YbDg/T"> <field name="VAR" id="q/.=RAMZ%`q2./=6O!Ce">calib_json</field> </block> </value> <value name="name"> - <block type="variables_get" id="RItd:yN}I+w|iw;2m.yL"> + <block type="variables_get" id="PjAAgZ}`zVf?!(S#FKKf"> <field name="VAR" id="~VV%d%niWCJE,.rkhq+F">fileCalib</field> </block> </value> <next> - <block type="close_file" id="E8sa,97/zQk1H]x73H}P"> + <block type="close_file" id="^8,Y3Of?qgB2|tPVM4+l"> <value name="name"> - <block type="variables_get" id="}]`xothGm[@CVqzdL5`8"> + <block type="variables_get" id="$N{1fKu=_KJ=vM|ZrGd{"> <field name="VAR" id="~VV%d%niWCJE,.rkhq+F">fileCalib</field> </block> </value> - <next> - <block type="util_python" id="Izs2GXFiON#$#Yl{Q8;1" inline="true"> - <field name="value">#write backup if usb stick available</field> - <next> - <block type="controls_if" id="09=a@^dj}r4pu#WD/eA6"> - <value name="IF0"> - <block type="exist_file" id="I7|+c5i*^F2*?:6N5#yo"> - <field name="path">/opt/ft/workspaces/ext_usb/sda/FactoryCalib.json</field> - </block> - </value> - <statement name="DO0"> - <block type="variables_set" id="K*DH,4qh!p;ur/6|~F[h"> - <field name="VAR" id="~VV%d%niWCJE,.rkhq+F">fileCalib</field> - <value name="VALUE"> - <block type="open_file" id="yVNjYQ8Th%ZaX#4A|f~J"> - <field name="path">/opt/ft/workspaces/FactoryCalib_backup.json</field> - <field name="mode">w</field> - </block> - </value> - <next> - <block type="write_file" id="5Aks_^CG:3r|wT@(n;^X"> - <field name="new line">FALSE</field> - <value name="value"> - <block type="variables_get" id="RRF]jvzKJCYMj;YbDg/T"> - <field name="VAR" id="q/.=RAMZ%`q2./=6O!Ce">calib_json</field> - </block> - </value> - <value name="name"> - <block type="variables_get" id="PjAAgZ}`zVf?!(S#FKKf"> - <field name="VAR" id="~VV%d%niWCJE,.rkhq+F">fileCalib</field> - </block> - </value> - <next> - <block type="close_file" id="^8,Y3Of?qgB2|tPVM4+l"> - <value name="name"> - <block type="variables_get" id="$N{1fKu=_KJ=vM|ZrGd{"> - <field name="VAR" id="~VV%d%niWCJE,.rkhq+F">fileCalib</field> - </block> - </value> - </block> - </next> - </block> - </next> - </block> - </statement> - </block> - </next> - </block> - </next> </block> </next> </block> </next> </block> - </next> + </statement> </block> </next> </block> @@ -454,7 +402,7 @@ </block> </statement> </block> - <block type="procedures_defnoreturn" id="tVMP(UyYD{#akqawgAD)" x="0" y="2859"> + <block type="procedures_defnoreturn" id="tVMP(UyYD{#akqawgAD)" x="0" y="2842"> <field name="NAME">printData</field> <statement name="STACK"> <block type="util_python" id="?2BTA(iUoYy2fTZ{kwC]" inline="true"> @@ -467,7 +415,7 @@ </block> </statement> </block> - <block type="procedures_defnoreturn" id="W_Tm2ceF76n#%|aA^wY=" x="0" y="3128"> + <block type="procedures_defnoreturn" id="W_Tm2ceF76n#%|aA^wY=" x="0" y="3111"> <field name="NAME">writeFileFactoryCalib_current</field> <statement name="STACK"> <block type="util_python" id=":#2-+xit`bp;61|s@=sM" inline="true"> @@ -521,7 +469,7 @@ </block> </statement> </block> - <block type="procedures_defnoreturn" id="D4S#AhC`3g4!*EYi+(|," x="0" y="3419"> + <block type="procedures_defnoreturn" id="D4S#AhC`3g4!*EYi+(|," x="0" y="3402"> <field name="NAME">writeFileFactoryCalib_defaults</field> <statement name="STACK"> <block type="util_python" id="~Y`c%9oJ)a#:TlTdG*+N" inline="true"> diff --git a/lib/File.py b/lib/File.py index 66f537959b85fb96f9b8358c3cb7b76d9831027c..1de67ae249d45d04492b99558a55984dee88694a 100644 --- a/lib/File.py +++ b/lib/File.py @@ -25,11 +25,10 @@ calib_data_HBW = None calib_data_VGR = None calib_data_DPS = None calib_data_SLD = None -file2 = None def loadFileFactoryCalib(): - global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD, file2 + global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD logging.log(logging.TRACE, '-') if exists('/opt/ft/workspaces/FactoryCalib.json'): logging.log(logging.DEBUG, 'load calibration values') @@ -45,7 +44,7 @@ def loadFileFactoryCalib(): def readFileFactoryCalib(): - global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD, file2 + global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD logging.log(logging.TRACE, '-') fileCalib = open('/opt/ft/workspaces/FactoryCalib.json', 'r', encoding='utf8') calib_json = fileCalib.read() @@ -66,7 +65,7 @@ def readFileFactoryCalib(): def writeFileFactoryCalib(_ssc, _hbw, _vgr, _dps, _sld): - global fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD, file2 + global fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD logging.log(logging.TRACE, '-') controller_name = os.uname()[1] ts = timestamp_utcnow() @@ -103,13 +102,15 @@ def writeFileFactoryCalib(_ssc, _hbw, _vgr, _dps, _sld): fileCalib = open('/opt/ft/workspaces/FactoryCalib.json', 'w', encoding='utf8') fileCalib.write(calib_json) fileCalib.close() - #write backup to usb stick - file = open('/opt/ft/workspaces/ext_usb/sda/'+controller_name, 'w', encoding='utf8') - file.close() - file2 = open('/opt/ft/workspaces/ext_usb/sda/FactoryCalib.json', 'w', encoding='utf8') - fileCalib = open('/opt/ft/workspaces/ext_usb/sda/FactoryCalib.json', 'w', encoding='utf8') - fileCalib.write(calib_json) - fileCalib.close() + #try to write a backup to usb stick + try: + fileUSB = open('/opt/ft/workspaces/ext_usb/sda/'+controller_name, 'w', encoding='utf8') + fileUSB.close() + fileCalib = open('/opt/ft/workspaces/ext_usb/sda/FactoryCalib.json', 'w', encoding='utf8') + fileCalib.write(calib_json) + fileCalib.close() + except IOError as e: + print(e) #write backup if usb stick available if exists('/opt/ft/workspaces/ext_usb/sda/FactoryCalib.json'): fileCalib = open('/opt/ft/workspaces/FactoryCalib_backup.json', 'w', encoding='utf8') @@ -118,7 +119,7 @@ def writeFileFactoryCalib(_ssc, _hbw, _vgr, _dps, _sld): def printData(): - global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD, file2 + global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD logging.log(logging.TRACE, '-') print("SSC: ", calib_data_SSC) print("HBW: ", calib_data_HBW) @@ -128,13 +129,13 @@ def printData(): def writeFileFactoryCalib_current(): - global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD, file2 + global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD logging.log(logging.TRACE, '-') writeFileFactoryCalib(get_calib_data_SSC(), get_calib_data_HBW(), get_calib_data_VGR(), get_calib_data_DPS(), get_calib_data_SLD()) def writeFileFactoryCalib_defaults(): - global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD, file2 + global _ssc, _hbw, _vgr, _dps, _sld, fileCalib, calib_json, ts, calib_data_SSC, calib_map, calib_data_HBW, calib_data_VGR, calib_data_DPS, calib_data_SLD logging.log(logging.TRACE, '-') if exists('/opt/ft/workspaces/FactoryCalib.json'): fileCalib = open('/opt/ft/workspaces/FactoryCalib.json', 'r', encoding='utf8')