Pages: [1]   Go Down
Author Topic: ATtiny con rf 433 y Arduino  (Read 2258 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola a todos, después de haber buscado y probado algunos proyectos para enviar un simple int, desde un attiny 85 con un modulo rf 433 am de los corrientes, no se como seguir estoy atascado. He probado con la libreria Manchester y nada , con Virtualwiretiny y tampoco lo consigo. No se que estoy haciendo mal !!!.
Alguien me puede orientar?, es que creo que es muy útil para conseguir reducir el espacio (con un pequeño mando tipo garaje) y además hacer proyectos económicos que requieren una instalación mínima.

Muchas gracias por adelantado...
Logged

MEXICO
Offline Offline
Newbie
*
Karma: 0
Posts: 42
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Buenas Compañero, Que modelo de Atyni ocupas? lo estas programando usando el arduino? Saludos
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 5
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Supongo que te refieres a módulos de comunicación como estos:

módulo de transmisión
módulo de recepción

¿Correcto?

Conseguí la comunicación entre dos ATmega328P con unos módulos similares usando el código de WinAVR. El código esta escrito para usar UART. El ATtiny85 no soporta este protocolo directo, pero hay ejemplos en la página de Atmel como implementar UART en código en los chips de ATtiny. Por cierto, ¿cual protocolo tratabas de usar?

En mi caso, nada mas puse el código de transmisión en un ATmega328P y usé un Bus Pirate para leer los bytes que salieron del módulo de recepción. Como hay mucho ruido en estas frecuencias conviene usar transmisión continua y una velocidad baja (como 1200 baud) para las primeras pruebas.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola y perdonad la tardanza de mi respuesta. He usado la libreria wirtualwiretiny, manchester, y alguna otra...
Es que de tanta prueba/fallo ya no se cuantas he probado, en cualquier caso solo necesito una que funcione.
En atmega 328 no tengo ningún tipo de problema es mas, tengo infinidad de proyectos con ellos.

El tipo de emisor es ese que muestras exactamente, la prueba que realizé es simplemente un codigo de envio de un
numero tal que 200. y en el receptor que lea ttodo lo que entra y lo muestre en pantalla.

Un saludo y gracias otra vez.  smiley-cry
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Por otro lado la verdad es que el uso de un attiny 85 es muy simple y el proyecto también, se trada de introducir en los pines pwm 0 y 1 , dos potenciometro tipo joy que me envíen constantemente su valor, de forma que el receptor (arduino), ejecute con ese valor un movimiento de un motor paso a paso.
El emisor solo seria una caja de 5x4 con una pila de 12 v tipo mando de garaje o timbre inhalambrico, el emisor 433 y el attiny85.

Creo que es muy simple y el desarrollo no es limitado a esto sino que se pueden usar para mandos de apertura de puertas, movimientos de camar (pan/tilt), persianas de casa, encender luces, etc.
 smiley-razz
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Por cierto yo probe este codigo:

#include <MANCHESTER.h>

int ls;

void setup()
{
  pinMode(1, INPUT);
  pinMode(2, INPUT);
  MANCHESTER.SetTxPin(4);
  //MANCHESTER.SetTimeOut(1000);
 
  ls = 0;
}

void loop()
{
 
  if(digitalRead(1)) {
    unsigned char data[1];
    data[0] = 2;
    MANCHESTER.TransmitBytes(1, &data[0]);
    delay(1000);
  }
  if(digitalRead(2)) {
    unsigned char data[1];
    data[0] = 1;
    MANCHESTER.TransmitBytes(1, &data[0]);
    delay(1000);
  }
}
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

No pretendo simplemente escribir un codigo y modificarlo para así adaptarlo a los proyectos sino entender como funciona y como modificar el contenido del mismo ya que a mi como a mucha gente, le interesa aprender, pero hay momentos en los que te atascas y desanimas... Lo mas sencillo es usar dos atmega328 con sus placas realizadas especificamente para cada proyecto y ya esta, pero el uso del mismo seria ridiculo, creo que para cada proyecto es mejor elegir el micro adecuando, ¿no?.

Un saludo a todo y gracias por vuestra ayuda de antemano.
Logged

Cordoba
Offline Offline
God Member
*****
Karma: 40
Posts: 686
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

el attiny85 no tiene puerto serial, quizas sea ese el problema principal, y que la libreria intente usarlo. No conozco la libreria.
Lo que primero deberias hacer es intentar hacer la comunicacion directamente por cables desde el transmisor al receptor, despues pasar al vinculo inalambrico.
Porque digo esto? la frecuencia es muy sucia por lo que tu receptor se la pasa enviando bytes de cualquier cosa que le parezca recibir.
Y debes tener un protocolo minimo como un caracter de arranque, datos, y una suma de verificacion.
Esto hará que tu receptor no atienda a cualquier cosa y que el dato recibido no esté alterado.

aca  un ejemplo usando modulos mas potentes.
http://arduino-for-beginners.blogspot.com.ar/2013/04/process-of-getting-attiny85-to-work.html
Logged

El que pregunta aprende, el que responde aprende a responder.

0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola maxid, y muchas gracias por responder. la libreria Manchester que usé no es para serie, tampoco virtualwiretiny que esta basada en la conocida virtualwire. Se que hay gente que la ha usado y le ha funcionado o eso parece, pero yo no consigo hacer que funcione. Por cierto no recibo nada por el receptor, es decir que en el receptor tengo un programa basico el cual escribe en pantalla cualquier cosa que se reciba, y esta realizado con Virualwire. Otro dato es que he probado el circuito con dos Ardus para verificar que no hay un problema en emisor/receptor del modulo 433. No estoy seguro de si el problema es que debo cambiar de algún modo la libreria de forma que se pueda adaptar el reloj a los 8 Mhz que es el reloj interno del attiny85.
aqui http://code.google.com/p/mysudoku/downloads/detail?name=tinyRFlink.zip&can=2&q=     encontré la libreria que os comente
por si alguien quiere probarla aver si le funciona correctamente, vene con ejemplos.
Logged

Cordoba
Offline Offline
God Member
*****
Karma: 40
Posts: 686
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

haz la prueba que te mensiono, olvida los modulos 433, conecta el pin de la salida al pin de la entrada del otro arduino con gnd en comun.
asi probaras si es de datos o de sintonia.
Logged

El que pregunta aprende, el que responde aprende a responder.

0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias por contestar maxid, si no te entiendo mal lo que me comentas es que el pin del attiny85 de salida al emisor lo conecte al de entrada del pin de ardu que cooresponde al de el receptor, ¿ verdad?.
Voy a probarlo, un saludo
Logged

Cordoba
Offline Offline
God Member
*****
Karma: 40
Posts: 686
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

exacto, de esta forma te aseguras que no sea problema de protocolos. Si directamente funciona te enfocas al vinculo inalambrico.

Despues haces una rutina repetitiva que envien, 1,2,3,4,5,6,7,8,9,0,1,2,3,4..... y ahi pescas si el problema es del receptor.
Logged

El que pregunta aprende, el que responde aprende a responder.

0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Despues de un tiempo sin poder hacer pruebas, he realizado la primera que ha sido conectar por softserial de la versión 1.04 de arduino. Funciona perfectamente, el único problema que me he encontrado es que no admite String en envios, pero se puede usar bien de todas formas.
He probado el método de conectar directamente un attiny a un ardu y con la librería manchester no me va.
Para los que estéis intentando probar algo con attiny deciros que es imprescindible primero copiar el burn de la version de attiny que tengamos, si es 1Mhz el burn de 1 Mhz,  si es 8Mhz el burn de 8 Mhz, etc. Si no se ralentizará todo probablemente. Es curioso probadlo!!!!!.
¿Maxid tu tienes alguna libreria que funcione con rf 433?
Logged

Pages: [1]   Go Up
Jump to: