Example #1
0
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)
Example #2
0
    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)