La Taberna del Puerto Greatblue360
"Se navega por los astros, por la mar, por la tierra, por las gentes, por los sentimientos...Se navega." Altair
VHF: Canal 77   
Regresar   La Taberna del Puerto > Foro > Foros Náuticos > Foro Náutico Deportivo

Avisos

 
 
Herramientas Estilo
  #1  
Antiguo 23-03-2009, 02:39
Avatar de olaje
olaje olaje esta desconectado
Hermano de la costa
 
Registrado: 27-10-2006
Localización: Mediterráneo
Edad: 71
Mensajes: 5,142
Agradecimientos que ha otorgado: 912
Recibió 2,765 Agradecimientos en 891 Mensajes
Sexo:
Predeterminado Bricocables. Telemetría a bordo fase II

La idea es continuar con el sistema de telemetría de a bordo que ya comenté en otro hilo (http://foro.latabernadelpuerto.com/s...ght=telemetria), y poder ver el máximo de información a través de Internet, de lo que ocurre en nuestro barco, esté donde esté.

La página que resume los datos actuales es www.olaje.com/telemetria.htm

Bien, pues ya que tenemos en la Red todos los datos NMEA y Sea Talk de a bordo, ahora estoy incorporando una placa con un micro-controlador y diversas entradas/salidas analógicas y digitales, y muy fácil de programar, además de bastante económico.

He empleado la plataforma de la placa Arduino (http://www.arduino.cc/) que me ha parecido suficiente para las necesidades previstas.

Así, la idea es que podamos medir temperaturas interior y exterior, humedad relativa (casi tenemos una completa estación climática, puesto que los datos de viento ya los obtenemos), un sensor de movimiento que nos avise si alguien entra en nuestro buque y envíe un sms de alerta, medir el voltaje de las baterías, avisarnos si hay agua en la sentina, etc.

Por lo pronto, el prototipo está trabajando y ya lee temperaturas (ext. e interior), humedad, tensión de baterías y detecta intrusos a bordo.






El software para programar la placa es gratuito, y la programación muy fácil, así que es sumamente sencillo acceder al barco desde cualquier lugar.

Yo he comprado el hard en Libelium (http://www.libelium.com/tienda/catalog/), y por muy pocos n€uros podemos montar el sistema.

Ya colgaré la información completa cuando el prototipo pase a versión usable y esté instalado en el barco, pero si alguno se anima a ir probandillo...

Genera también una sentencia pseudo-NMEA-casero para enviar los datos de la placa Arduino junto con el resto de los equipos de a bordo. En principio, será del tipo $OJMTR (OlaJeMeTeR) recién inventado


Este es el código de la primera Beta. Copiar y pegar...y funciona :


#include <SoftwareSerial.h>

//declarar variables
float tempC;
float Humedad;
float Bateria;
float tempCI;
int tempPin = 0;
int tempiPin = 3;
int humPin = 1;
int volPin = 2;
int ledPin = 13;
int interruptor = 4;
int sensorPIR = 5;
int PIRactivo=0;
long contador = 0;

#define rxPin 2
#define txPin 3
SoftwareSerial mySerial = SoftwareSerial(rxPin, txPin);
void setup()
{
Serial.begin(4800);
//opens serial port, sets data rate to 4800 bps
pinMode(ledPin, OUTPUT);
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);


// set the data rate for the SoftwareSerial port
mySerial.begin(4800);


}
void loop()
{
tempC = analogRead(tempPin);
tempC = (5.0 * tempC * 100.0)/1024.0;
tempCI = analogRead(tempiPin);
tempCI = (5.0 * tempCI * 100.0)/1024.0;
Humedad = analogRead(humPin);
Humedad = (Humedad * 100.0) / 1024.0;
Bateria = analogRead(volPin);
Bateria = Bateria * 53.2 / 984;
int b = 12;
PIRactivo=digitalRead(sensorPIR); // Lee el sensor PIR
if (PIRactivo==HIGH){
contador=1;
}
if (contador > 0) {
contador = contador + 1;
digitalWrite(interruptor,HIGH);
} else {
digitalWrite(interruptor,LOW);
}
if (contador > 20) {
contador = 0;
}

Serial.print(b, BYTE);
Serial.println("Datos enviados desde Arduino");
Serial.print("Temperatura Exterior: ");
Serial.print(tempC);
Serial.println("C ");
Serial.print("Temperatura Interior: ");
Serial.print(tempCI);
Serial.println("C ");
Serial.print("Humedad relativa .. : ");
Serial.print(Humedad);
Serial.println("% ");
Serial.print("Tension Bateria ... : ");
Serial.print(Bateria);
Serial.println("V");
if (contador >0) {
Serial.print("A L A R M A D E M O V I M I E N T O");
}
mySerial.print("$OJMTR");
mySerial.print(",");
mySerial.print(tempC, BYTE);
mySerial.print(",");
mySerial.print(tempCI, BYTE);
mySerial.print(",");
mySerial.print(Humedad, BYTE);
mySerial.print(",");
mySerial.print(Bateria, BYTE);
mySerial.println();


digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
//Pausa de un segundo y parpadeo del led
}


Salu2. Carmelo ( O L A J E )

__________________

'Pa' vivir navegando, mejor no morirse
Mi web:
https://alcorai.net
https://olaje.com



Call Sign: EA7AZH & 23Oscar2 en REMER
Citar y responder
8 Cofrades agradecieron a olaje este mensaje:
capitan necora (23-03-2009), Marconcio (23-03-2009), PIK (24-03-2009), Rik (24-03-2009), robinson crusoe (23-03-2009), rolando1943 (23-03-2009), teteluis (23-03-2009), vicand66 (23-03-2009)
 

Greatblue360


Reglas del foro
No puedes crear discusiones
No puedes responder a mensajes
No puedes editar tus adjuntos
No puedes editar tus mensajes

BB code está activado
Emoticonos está activado
El código [IMG] está activado
El código HTML está desactivado
Ir a


Todas las horas son GMT +1. La hora es 12:35.


Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
© La Taberna del Puerto