Raspberry PI 3+WindSonic

¿Has creado algún proyecto genial con una Raspberry Pi? Este es tu lugar.
Responder
Beto_Ismael
Pi Newbie
Pi Newbie
Mensajes: 6
Registrado: 11 Sep 2018, 20:46
Agradecido: 0
Agradecimiento recibido: 0

hola gente, soy nuevo en lo que es rapsberry y en la empresa que trabajo mi jefe me solicita que logre conectar la raspberry PI 3 con un sensor Windsonic el cual se comunica por RS-232.

Mi idea es ocupar los los puertos de my pi 3 (10 RX y 8TX).
se que los puertos RX y TX toleran un voltaje ttl ,para ello estoy ocupando un conversor rs 232 a niveles mas bajo de lectura sin dañar la pi 3.

luego obtener los datos de lectura reflejados en pantalla o apoyarme con algun codigo python para guardar dichos datos.

La verdad es que no se por donde empezar...

Les ruego ayuda :triste :triste
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Lo suyo es que haya algún programa que acceda a los datos del sensor cada X segundos (o menos) y almacene esos datos para que los puedas consultar en cualquier momento.
Existen muchos códigos en python para leer y escribir al puerto serie:

Código: Seleccionar todo

import serial
port = serial.Serial("/dev/ttyAMA0", baudrate=115200, timeout=3.0)
while True:
    port.write("\r\nSay something:")
    rcv = port.read(10)
    port.write("\r\nYou sent:" + repr(rcv))
Así que por un lado, tenemos el tema del código:
https://www.elinux.org/Serial_port_programming

Y por otro lado tenemos que "preparar" la raspberry para liberar el UART, es decir, para deshabilitar la consola por puerto serie de la raspi, de forma que puedas usar ese puerto serie para comunicación.
Eso se hace con "sudo raspi-config", opción 5 "Interfacing options", opción P6 "Serial" y ahí eliges "No" para deshabiltiar la consola serial
https://www.raspberrypi.org/documentati ... on/uart.md

Por último, lo más divertido: los comandos propios del sensor y la parte de interpretar las respuestas:
http://gillinstruments.com/data/manuals ... Manual.pdf
Beto_Ismael
Pi Newbie
Pi Newbie
Mensajes: 6
Registrado: 11 Sep 2018, 20:46
Agradecido: 0
Agradecimiento recibido: 0

Hice cada paso, ahora bien necesito conocer el scrip con el comando exacto que me permita leer el puerto en donde estará conectado mi sensor con el conversor...
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

¿No te valen los ejemplos que te he enviado?
https://www.elinux.org/Serial_port_prog ... l_emulator
Beto_Ismael
Pi Newbie
Pi Newbie
Mensajes: 6
Registrado: 11 Sep 2018, 20:46
Agradecido: 0
Agradecimiento recibido: 0

Este es el codigo que encontré solo para leer el puerto en donde tengo conectado el sensor

Código: Seleccionar todo

  #!/usr/bin/env python
          
      
           import time
           import serial
          
      
           ser = serial.Serial(
              
               port='/dev/ttyAMA0',
               baudrate = 9600,
               parity=serial.PARITY_NONE,
               stopbits=serial.STOPBITS_ONE,
               bytesize=serial.EIGHTBITS,
               timeout=1
           )
           counter=0
          
      
           while 1:
               x=ser.readline()
               print x
Beto_Ismael
Pi Newbie
Pi Newbie
Mensajes: 6
Registrado: 11 Sep 2018, 20:46
Agradecido: 0
Agradecimiento recibido: 0

No logro leer el puerto con el sensor conectado.. :triste :triste :triste :triste
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

¿Has desactivado la consola serie?

Código: Seleccionar todo

Eso se hace con "sudo raspi-config", opción 5 "Interfacing options", opción P6 "Serial" y ahí eliges "No" para deshabiltiar la consola serial
https://www.raspberrypi.org/documentation/configuration/uart.md
Beto_Ismael
Pi Newbie
Pi Newbie
Mensajes: 6
Registrado: 11 Sep 2018, 20:46
Agradecido: 0
Agradecimiento recibido: 0

hice todo eso, quizás no encuentro el scrip correcto para la lectura del puerto y ver los datos del sensor
Beto_Ismael
Pi Newbie
Pi Newbie
Mensajes: 6
Registrado: 11 Sep 2018, 20:46
Agradecido: 0
Agradecimiento recibido: 0

Este es el estado de mi pi 3

Código: Seleccionar todo

pi@raspberrypi:~ $ ls -lh /dev/serial0
lrwxrwxrwx 1 root root 7 sep 13 17:38 /dev/serial0 -> ttyAMA0
pi@raspberrypi:~ $ ls -lh /dev/ttyS0
crw-rw---- 1 root dialout 4, 64 sep 13 17:38 /dev/ttyS0
pi@raspberrypi:~ $ dmesg | grep tty
[    0.000000] Kernel command line: 8250.nr_uarts=1 bcm2708_fb.fbwidth=800 bcm2708_fb.fbhe        ight=480 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  dwc_ot        g.lpm_enable=0 console=tty1 root=PARTUUID=58cc10f9-02 rootfstype=ext4 elevator=deadline fs        ck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
[    0.000148] console [tty1] enabled
[    0.545537] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a         PL011 rev2
[    0.546439] 3f215040.serial: ttyS0 at MMIO 0x0 (irq = 166, base_baud = 31250000) is a 1        6550
pi@raspberrypi:~ $


Responder