Page 1 of 1

Projet scolaire motorcycle

Posted: Mon Feb 10, 2020 10:39 am
by Natoons
Salut
Le système connaîtra toujours la position de la moto et filmera l'itinéraire du motard. En cas d'accident, un message SMS sera envoyé aux services d'urgence, contenant la date, l'heure et la position GPS de l'incident. Un serveur web recevra les informations de géolocalisation afin d'établir l'itinéraire à partir d'une application web à des fins statistiques.

Nous avons pensé, et nous aurions besoin d'une carte de développement "Raspberry Pi Zero W" sur laquelle nous connecterions un "Raspberry GPS/GPRS/GSM" : https://www.waveshare.com/w/upload/4/4a ... ual_EN.pdf
J'ai besoin d'aide pour la programmation.

Code: Select all

import serial
import time
ser = serial.Serial("/dev/ttyS0",115200)
W_buff = ["AT+CGNSPWR=1\r\n", "AT+CGNSSEQ=\"RMC\"\r\n", "AT+CGNSINF\r\n", "AT+CGNSURC=2\r\n","AT+CGNSTST=1\r\n"]
ser.write(W_buff[0])
ser.flushInput()
data = ""
num = 0

try:
    while True:
        #print ser.inWaiting()
        while ser.inWaiting() > 0:
            data += ser.read(ser.inWaiting())
        if data != "":
            print data
            if  num < 4:	# the string have ok
                print num
                time.sleep(0.5)
                ser.write(W_buff[num+1])
                num =num +1
            if num == 4:
                time.sleep(0.5)
                ser.write(W_buff[4])
            data = ""
except keyboardInterrupt:
    if ser != None:
        ser.close()

try:
    while True:
        #print ser.inWaiting()
        while ser.inWaiting() > 0:
            data += ser.read(ser.inWaiting())
        if data != "":
            print data
            #if data.count("O") > 0 and data.count("K") > 0 and num < 3:	# the string have ok
            if num < 3:
                time.sleep(1)
                ser.write(W_buff[num+1])
            #if num == 3 and data.count(">") > 0:
            if num == 3:
                #print W_buff[4]
                time.sleep(0.5)
                ser.write(W_buff[4])
                ser.write("\x1a\r\n")# 0x1a : send   0x1b : Cancel send
            num =num +1
            data = ""
except keyboardInterrupt:
    if ser != None:
    ser.close()