예제 #1
0
# -*- coding: utf-8 -*-
# Lecture d'une tension sur l'entréé analogique A0
# Mesure en temps réel dans un boucle longue                                                                       #

from nanpy import ArduinoApi  # Gestion Arduino
from nanpy import SerialManager  # Gestion port série
from time import sleep  # Importation de sleep(seconde)

port = SerialManager(device='/dev/ttyACM0'
                     )  # Sélection du port série (exemple : device = 'COM6')
uno = ArduinoApi(connection=port)  # Déclaration de la carte Arduino

t = []
N = []

t0 = uno.millis()  # Instant initial

for i in range(20):
    t.append(uno.millis() - t0)  # Temps
    N.append(uno.analogRead(0))  # Lecture CAN sur  A0
    #sleep(1)                      # Temporisation

port.close()  # Fermeture du port série

print("Dt ; N ; U")
print("ms ; _ ; V")
for i in range(1, len(t)):
    print(t[i] - t[i - 1], ';', N[i], ';', round(N[i] * 5 / 1023, 2))
# -*- coding: utf-8 -*-
# Lecture d'une tension sur l'entréé analogique A0
# Mesure du temps de réponse de la fonction readAnalogue dans une boucle
# Entre 5 et 10 ms

from nanpy import ArduinoApi           # Gestion Arduino
from nanpy import SerialManager        # Gestion port série

port = SerialManager(device='/dev/ttyACM0')     # Déclaration du port série
uno = ArduinoApi(connection=port)               # Déclaration de la carte Arduino


for i in range(20):
    t = uno.millis()                 # Instant avant la fonction analogRead
    N = uno.analogRead(0)            # Lecture tension sur A1 puis affichage
    Dt = uno.millis()-t              # Durée 
    print("N = ", N)
    print("Dt = ", Dt, "ms")

port.close()                           # Fermeture du port série
port = SerialManager(device='/dev/ttyACM0'
                     )  # Sélection du port série (exemple : device = 'COM6')
uno = ArduinoApi(connection=port)  # Déclaration de la carte Arduino

uno.pinMode(8, uno.OUTPUT)  # Paramétrage de la broche 8 en sortie
n = 30  # Nombre de points de mesure
temps = np.zeros(n)  # Tableau temps
y = np.zeros(n)  # Tableau ordonnée

# Décharge du condensateur avant les mesures
uno.digitalWrite(8, 0)  # Broche 8 à OV
sleep(2)  # pendant 2 s

# Début de la charge du condensateur
t0 = uno.millis()  # Instant initial
uno.digitalWrite(8, 1)  # Broche 8 à 5V

for i in range(n):
    temps[i] = uno.millis()
    y[i] = uno.analogRead(0)  # Lecture tension sur A1 puis affichage
    sleep(0.1)

# Décharge du condesateur après mesures
uno.digitalWrite(8, 0)  # Broche 8 à 0V

port.close()  # Fermeture du port série

# Calculs des variables
t = temps - t0
u = y * 5 / 1023
예제 #4
0
파일: gyro.py 프로젝트: romit5797/Skydroid
from nanpy.arduinotree import ArduinoTree
from nanpy.i2c import I2C_Master
from nanpy.serialmanager import SerialManager
import logging
import math
from nanpy.wire import Wire
from time import sleep

from nanpy import ArduinoApi

connection = SerialManager()
a = ArduinoApi(connection=connection)
wire = Wire(connection=connection)
MPU = 0x68
c = 0
b = a.millis()
print("hello")
print(str(b))
wire.begin()
wire.beginTransmission(MPU)
wire.write(0x6B)
wire.write(0x00)
wire.endTransmission(True)
'''
wire.beginTransmission(MPU)
wire.write(0x1C)
wire.write(0x10)
wire.endTransmission(True)
  
wire.beginTransmission(MPU)
wire.write(0x1B)