summaryrefslogtreecommitdiff
path: root/test-cli/test/tests/qamp.py
diff options
context:
space:
mode:
authorManel Caro <mcaro@iseebcn.com>2020-03-04 17:46:36 +0100
committerManel Caro <mcaro@iseebcn.com>2020-03-04 17:46:36 +0100
commit09de774dcc1a5abc1c8f3a00fdb039aa3c522f52 (patch)
treec4bd3963d0df01d2e3a33732247388ed4651b186 /test-cli/test/tests/qamp.py
parentb6932fbaf898724ae87c29f8965621610f377084 (diff)
downloadboard-09de774dcc1a5abc1c8f3a00fdb039aa3c522f52.zip
board-09de774dcc1a5abc1c8f3a00fdb039aa3c522f52.tar.gz
board-09de774dcc1a5abc1c8f3a00fdb039aa3c522f52.tar.bz2
SOPA Initial Commit
Diffstat (limited to 'test-cli/test/tests/qamp.py')
-rw-r--r--test-cli/test/tests/qamp.py47
1 files changed, 18 insertions, 29 deletions
diff --git a/test-cli/test/tests/qamp.py b/test-cli/test/tests/qamp.py
index 9fcd6d2..3e38ce9 100644
--- a/test-cli/test/tests/qamp.py
+++ b/test-cli/test/tests/qamp.py
@@ -5,10 +5,17 @@ import time
class Qamp(unittest.TestCase):
- def __init__(self, testname, testfunc, undercurrent=0.1, overcurrent=2):
+ #varlist: undercurrent, overcurrent
+ def __init__(self, testname, testfunc, varlist):
self._current = 0.0
- self._undercurrent=undercurrent
- self._overcurrent = overcurrent
+ if "undercurrent" in varlist:
+ self._undercurrent = varlist["undercurrent"]
+ else:
+ raise Exception('undercurrent param inside Qamp must be defined')
+ if "overcurrent" in varlist:
+ self._overcurrent = varlist["overcurrent"]
+ else:
+ raise Exception('overcurrent param inside Qamp must be defined')
self._vshuntfactor=16384.0
self._ser = serial.Serial()
self._ser.port = '/dev/ttyUSB0'
@@ -33,24 +40,12 @@ class Qamp(unittest.TestCase):
except:
self.fail("failed: IMPOSSIBLE OPEN USB-SERIAL PORT ( {} )".format(self._ser.port))
error=1
- return -1
if error==0:
# Clean input and output buffer of serial port
self._ser.flushInput()
self._ser.flushOutput()
# Send command to read Voltage at Shunt resistor
# Prepare cmd
- cmd = ('at\n\r')
- i=0
- while (i < len(cmd)):
- i = i + self._ser.write(cmd[i].encode('ascii'))
- time.sleep(0.05)
- self._ser.read(1)
- res0 = []
- while (self._ser.inWaiting() > 0): # if incoming bytes are waiting to be read from the serial input buffer
- res0.append(self._ser.read(1).decode('ascii')) # read the bytes and convert from binary array to ASCII
- print(res0)
- #CHECK COM FIRST
cmd = ('at+in?\n\r')
i = 0
@@ -67,21 +62,15 @@ class Qamp(unittest.TestCase):
string = ''.join(res)
string = string.replace('\n', '')
- try:
- self._current = float(int(string, 0)) / self._vshuntfactor
- except:
- self.fail("failed: CAN'T READ CONSUMPTION (CURRENT=0?)")
- error=1
- return -1
- if error==0:
- print(self._current)
+ self._current = float(int(string, 0)) / self._vshuntfactor
+ print(self._current)
# In order to give a valid result it is importarnt to define an under current value
- if (self._current > float(self._overcurrent)):
- self.fail("failed: OVERCURRENT DETECTED ( {} )".format(self._current))
- return -1
+ if (self._current > float(self._overcurrent)):
+ self.fail("failed: OVERCURRENT DETECTED ( {} )".format(self._current))
+
+ if (self._current < float(self._undercurrent)):
+ self.fail("failed: UNDERCURRENT DETECTED ( {} )".format(self._current))
+
- if (self._current < float(self._undercurrent)):
- self.fail("failed: UNDERCURRENT DETECTED ( {} )".format(self._current))
- return -1