def task(): global lastT global lastR global lastSW global swMode global GC adata = DAQC.getADCall(3) val = round(DAQC.getADC(0, 8), 1) Power5Text.set(val) val = round((adata[1] - 2.73) * 100, 2) val = 0.2 * val + 0.8 * lastT lastT = val TempText.set(str("{:>3.1f}".format(val)) + 'C') val = round(adata[2] * 12.21 / 1.636, 1) Power12Text.set(val) val = round(adata[0] / 4.096 * 100, 1) FanText.set(str(val) + '%') DAQC.setPWM(0, 0, int(val * 1024 / 100)) val = DAQC.getRANGE(0, 6, 'c') if isinstance(val, float): if val > 100: val = 99.9 else: val = 0 val = round(val, 1) val = 0.8 * lastR + 0.2 * val lastR = val RangeText.set(str("{:>2.1f}".format(val)) + 'cm') lamp = 0 if (DAQC.getDINbit(0, 2) == 1): lamp = 32 sw = DAQC.getSWstate(0) if (sw == 1) and (lastSW == 0): lastSW = 1 swMode = not swMode if swMode: GCmode.set('Binary Code :') else: GCmode.set('Grey Code :') if (sw == 0) and (lastSW == 1): lastSW = 0 val = (int(adata[7] * 32 / 4.096)) if swMode == 0: GCText.set(GC[val]) num = GC[val] else: GCText.set(val) num = val DAQC.setDOUTall(0, (num + lamp)) root.after(100, task)
HC-SR04 Aansluitschema: 5V: Digital-Output socket 10 Ground: Digital-Input socket 10 Trigger: Digital-Output socket 0 Echo: Digital Input socket 0 Zie voor details: https://pi-plates.com/daqc-users-guide/#Distance_Measurement_with_the_HC-SR04 ''' #### werkt alleen als de hardware is aangesloten # distance = DAQC.getRANGE(0,0,'c') # geeft afstand in cm # print(distance) ####### Lees data van Analoge Input val = DAQC.getADC(0, 1) # DAQC 0, adres Analog-Input 1 print(val) val8 = DAQC.getADCall(0) # lees alle 8 Analog-Inputs print(val8) ######## Lees meerdere data punten data = get_data.readPiPlate(DAQC, [0, 1, 2]) # kanaal [0,1,2], 1000 punten, ADC 0 # maak een (unieke) filenaam aan filename = 'meting_test1_%s.txt' % (int(time.time())) write_data.saveArray(data, filename)