looking good
This commit is contained in:
parent
2b69be2874
commit
d0b507d6d9
2 changed files with 16 additions and 34 deletions
38
Main.py
38
Main.py
|
|
@ -13,43 +13,25 @@ while True:
|
|||
v = []
|
||||
time.sleep(.005)
|
||||
PCAN.Write(PCAN_USBBUS1, Messages.rCellVInit)
|
||||
cellMessage = False
|
||||
# Keep reading messages until a cell voltage message is received
|
||||
while (cellMessage == False):
|
||||
print("in loop")
|
||||
time.sleep(.016)
|
||||
MSG = PCAN.Read(PCAN_USBBUS1)
|
||||
MSG = MSG[1]
|
||||
print(MSG.ID)
|
||||
if MSG.ID == 0x7bb:
|
||||
cellMessage = True
|
||||
print("out of loop")
|
||||
time.sleep(.01)
|
||||
MSG = PCAN.Read(PCAN_USBBUS1)
|
||||
MSG = MSG[1]
|
||||
print(MSG.ID)
|
||||
s = "%s%s%s%s" % (MSG.DATA[4], MSG.DATA[5], MSG.DATA[6], MSG.DATA[7])
|
||||
v.append(int(s))
|
||||
print(v)
|
||||
|
||||
#PCAN.Write(PCAN_USBBUS1, Messages.rCellV)
|
||||
for i in range(0, 28):
|
||||
print("*************** i = #%s " % i)
|
||||
#time.sleep(.016)
|
||||
time.sleep(.001)
|
||||
PCAN.Write(PCAN_USBBUS1, Messages.rCellV)
|
||||
#print("message sent")
|
||||
cellMessage = False
|
||||
while (cellMessage == False):
|
||||
time.sleep(.001)
|
||||
MSG = PCAN.Read(PCAN_USBBUS1)
|
||||
MSG = MSG[1]
|
||||
if MSG.ID != 0:
|
||||
print(MSG.ID)
|
||||
time.sleep(.010)
|
||||
if MSG.ID == 0x7bb:
|
||||
cellMessage = True
|
||||
print("true!")
|
||||
time.sleep(.01)
|
||||
MSG = PCAN.Read(PCAN_USBBUS1)
|
||||
MSG = MSG[1]
|
||||
print(MSG.ID)
|
||||
s = s + "%s%s%s%s%s%s%s" % (MSG.DATA[1], MSG.DATA[2], MSG.DATA[3], MSG.DATA[4], MSG.DATA[5], MSG.DATA[6], MSG.DATA[7])
|
||||
v.append(int(s))
|
||||
|
||||
print(v)
|
||||
print(len(v))
|
||||
#processString(v)
|
||||
|
||||
|
||||
process_list(v)
|
||||
|
|
@ -1,30 +1,30 @@
|
|||
from math import ceil
|
||||
|
||||
|
||||
def processList(v):
|
||||
def process_list(v):
|
||||
voltages = []
|
||||
voltages[0] = v[0] & 0x00000000ffff0000
|
||||
voltages[1] = v[1] & 0x000000000000ffff
|
||||
for i in range(1, 27):
|
||||
if i%2 == 1:
|
||||
if i % 2 == 1:
|
||||
v1 = (v[i] & 0x00ffff0000000000) >> 40
|
||||
v2 = (v[i] & 0x000000ffff000000) >> 20
|
||||
v3 = (v[i] & 0x0000000000ffff00) >> 8
|
||||
vh = v[i] & 0x00000000000000ff
|
||||
voltages[ceil(2 + 3.5 (i - 1))] = v1
|
||||
voltages[ceil(2 + 3.5 * (i - 1))] = v1
|
||||
voltages[ceil(2 + 3.5 * (i - 1) + 1)] = v2
|
||||
voltages[ceil(2 + 3.5 * (i - 1) + 2)] = v3
|
||||
voltages[ceil(2 + 3.5 * (i - 1) + 3)] = vh << 8
|
||||
elif i%2 == 0:
|
||||
elif i % 2 == 0:
|
||||
vh = (v[i] & 0x00ff000000000000) >> 48
|
||||
v1 = (v[i] & 0x0000ffff00000000) >> 28
|
||||
v2 = (v[i] & 0x00000000ffff0000) >> 16
|
||||
v3 = v[i] & 0x000000000000ffff
|
||||
voltages[ceil(2 + 3.5 * (i - 1) - 1)] = voltages[ceil(2 + 3.5 * (i -1 ) - 1)] & vh
|
||||
voltages[ceil(2 + 3.5 * (i - 1) - 1)] = voltages[ceil(2 + 3.5 * (i -1) - 1)] & vh
|
||||
voltages[ceil(2 + 3.5 * (i - 1))] = v1
|
||||
voltages[ceil(2 + 3.5 * (i - 1) + 1)] = v2
|
||||
voltages[ceil(2 + 3.5 * (i - 1) + 2)] = v3
|
||||
voltages[96] = voltages[96] & ((v[28] & 0x00ff000000000000) >> 48)
|
||||
for i in range(0, 95):
|
||||
print("Cell " + str(z + 1) + "= %.2f" % (voltages[i]))
|
||||
print("Cell " + str(i + 1) + "= %.2f" % (voltages[i]))
|
||||
return
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue