Estimados,
Necesito capturar datos de una estación meteorológica por comunicacion Ethernet.
El equipamento consta de un datalogger CR1000 con su adaptador NL120 y una estación Davis Vantage Pro con su datalogger Ethernet.La trama consta de 90 bytes, compuesto de numeros hexadecimales consecutivos que luego segmentare para obtener las lecturas meteorologicas, incluyen numeros del 0x00 al 0xFF.
Cadena a enviar:
LOOP 1{0D}
Cadena a recibir:
{06}LOOÄ{00}ê{01}¢s{17}{03}3{FF}ÿ{FF}ÿÿÿÿÿÿÿÿÿÿÿÿÿ{FF}{00}{00}ÿ{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}ÿÿÿ{FF}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}({03}{07}¬˜{08}ï{03}{0A}{0D}<{1D}
El código que estoy utilizando es el siguiente:
Scan (5,Sec,0,0) SerialFlush (Davis_socket) Erase (Davis_in_string) Davis_socket = TCPOpen ("192.168.1.54",22222,100) SerialOut (Davis_socket,"LOOP 1" & CHR(13),"",0,0) SerialIn (Davis_in_string,Davis_socket,200,-1,90) TCPClose (Davis_socket) For x = 1 To 90 Davis_array_var(x) = Mid (Davis_in_string,x,1) Next NextScan
Sin embargo la cadena capturada tiene solo 6 bytes de longitud.
¿Que funciones me recomienda utilizar?
Saludos cordiales.