Loading...
  Show Posts
Pages: [1] 2 3 ... 35
1  Topics / Robotics / Re: Turnigy 9x RC and 8ch receiver on: June 16, 2013, 01:12:43 pm
I don't know how people solve it or even if they have or not this problem. I think a lot of people have this problem with interrupts but they don't know they have it.

Although my project of quadcopter isn't finished I have developed a preliminary solution for this. Besides use a translator to understand all entries you can download the codes for it from

http://cuadricopterodiyarduino.blogspot.com.es/2012/07/leer-emisora-rc-parte-2.html

and

http://cuadricopterodiyarduino.blogspot.com.es/2012/08/control-motores-parte-2.html
2  Topics / Robotics / Re: Turnigy 9x RC and 8ch receiver on: June 16, 2013, 07:40:05 am
Hi Kyong.

I'm not sure you can read the 8 channels with pulseIn() function.
I think pulseIn(pin, HIGH, time) waits a HIGH from a LOW. You read channel 1, when channel 1 goes to LOW you read channel 2 but in these moment channel 2 is HIGH already. Then pulseIn() for channel 2 is waiting for a LOW and it arrives one cycle (about 20 ms) later. So you are reading every channel every 8 cycles.

Also servo library uses interrupts and I think it causes errors in pulseIn() readings.

You can read some info from my blog http://cuadricopterodiyarduino.blogspot.com.es
But I'm sorry, it's in spanish.
3  International / Proyectos / Re: sistema mando rf 433mhz arduino on: June 11, 2013, 03:58:14 am
Este Cheyenne es un sol  smiley

 smiley-red
 smiley-wink
4  International / Proyectos / Re: sistema mando rf 433mhz arduino on: June 10, 2013, 05:16:18 pm
De nada, me alegro de que ya te funcione.
Y así es, ya puedes estar contenta porque yo sólo te he empujado. No te he hecho el código, te he explicado cómo hacerlo y lo has sabido implementar. ¡Enhorabuena!
5  International / Proyectos / Re: sistema mando rf 433mhz arduino on: June 10, 2013, 09:49:14 am
Estás declarando las variables dentro del loop(). Decláralas todas antes del setup(). Si no lo que estás haciendo es ponerlas a cero en todos los ciclos, en concreto cuando pones:

Code:
int mandoaestadoactual = 0;
int mandoaestadoanterior = 0;
int cnt = 0;
6  International / Hardware / Re: Ayuda con potenciometro on: June 10, 2013, 09:37:53 am
Lo que necesitas del menú ya lo entiendo pero primero hay que ver dónde tienes el fallo de la lectura del potenciómetro. De hecho no tienes el mismo resultado con tu código y con el de AnalogReadSerial.

Haz lo siguiente: desconecta todo de tu placa si es que tienes más cosas conectadas (¿tenías más cosas conectadas?). Conecta sólo el potenciómetro y carga el ejemplo de AnalogReadSerial. Ve girando el potenciómetro como antes y tomas nota del valor mostrado en pantalla al mismo tiempo que mides la tensión con el polímetro.
7  International / Hardware / Re: Ayuda con potenciometro on: June 10, 2013, 09:07:27 am
¿Entonces si cargas un ejemplo funciona bien? Pues está claro que algo tienes mal en tu código... Si lo pones tal vez podamos ver el fallo. Si no lo pones seguro que no puedo ver el fallo.

También lo primero es que compruebes el propio potenció entro. Mide la tensión con un polímero cuando lo tienes a cero, un tercio, dos tercios y total. También veremos si es lineal o no y si tiene algún fallo.
8  International / Proyectos / Re: sistema mando rf 433mhz arduino on: June 10, 2013, 05:30:45 am
Lo que tienes que hacer es una detección de flanco para los pulsadores. No tienes que detectar si están HIGH o LOW, tienes que detectar sólo el paso de LOW a HIGH. Hay muchos ejemplos por la red. Básicamente tienes que crear dos variables para cada pulsador. Una es el estado anterior y otra el actual y tu subrrutina sólo tiene que ejecutarse cuando estado anterior es LOW y estado actual HIGH.
9  International / Hardware / Re: Ayuda con potenciometro on: June 10, 2013, 05:25:25 am
Pon el código que estás usando. Y sobre todo pon el esquema de cómo tienes conectado el potenciómetro.
10  Using Arduino / Programming Questions / Re: Changing PWM frequency on: June 07, 2013, 04:44:45 pm
@ freak174, I have a question about that high refresh rate for your ESC. Do you think it has an utility? I think a quad needs an ESC refresh rate as high as the cycle for the IMU but no higher. Has your IMU a cycle of 400 Hz or 250 Hz?
11  International / Hardware / Re: Conectar circuito externo a Arduino para mejorar Iron Man on: June 05, 2013, 04:06:22 pm
Se me había ocurrido que podía ser que la tensión en el pulsador fuera mayor de los 5 V de Arduino pero si es para muñecos funcionará a pilas, ¿tiene más de 5 V?
12  International / Proyectos / Re: necesito sketche para controlar un robot oruga con receptor ppm de 9 canales on: May 29, 2013, 02:34:09 pm
Quote from: diymrj
como bien dice el compañero, no es moco de pavo, te encontraras un problema y es que al leer los valores de pulsos, estos tienen unas pequeñas variaciones que no vemos y que corrigen los servos conectados al receptor PPM, pero que arduino los ve y provocan tembleques en los servos además de golpes en motores, (lo estoy sufriendo),

Los pulsos de una emisora RC no tienen pequeñas variaciones que corrijan los servos. Los tembleques en tus servos y golpes en motores son debidos a otras causas como la imprecisión en la lectura con Arduino de esos pulsos o mala programación.

Quote from: diymrj
además deberas capturar la trama PPM del receptor y allí tienes otro problema mas grave, los receptores modernos el chip que llevan la demodulación de la trama la hacen interna, con lo que solo puedes leer el pulso, asignarla a una variable y mapearla para sacar el pulso por el pwm, pero la función pulseIn(pin,estado) te parara en seco los motores, con lo que avanzaras a trmpicones.
si lo solucionas dime como y asi avanzamos los dos....

El poder interceptar o no la trama PPM en el receptor es cierto que no siempre se puede, depende de la emisora. Hay páginas que indican las emisoras más comunes y cómo interceptar la señal. Yo por ejemplo con mi emisora no puedo.
Hasta para usar librerías hay que saber cómo funcionan y no siempre se puede aglutinar todo sin más. En general por mi experiencia la mayoría de las veces se producen "incompatibilidades" por las interrupciones que producen algunas librerías, por ejemplo la de manejar los servos. En mi blog intento explicar algo de esto dentro de mi proyecto al mismo tiempo que intento entenderlo yo.

Quote from: rabanisa
Hombre yo hice una gañanada  smiley-roll-blue, pero me saco del apuro conectas cada canal a una entrada del Arduino y realizas el pulse_in. No tuve trompicones ni cosas raras ,ahora te hacen falta un pin por canal que quieras escanear.

Si quieres tengo una manera muy sencilla de leer hasta 8 canales de una emisora RC con tan sólo 3 entradas de Arduino. También tengo desarrollado el código para leer los pulsos.
No obstante en general para usar este tipo de códigos creo que hay que saber un poco de programación y de lo que hace el micro. Si te lees con detenimiento las entradas de mi blog creo que entenderás a lo que me refiero http://cuadricopterodiyarduino.blogspot.com.es/

Para la lectura de la emisora RC: http://cuadricopterodiyarduino.blogspot.com.es/2012/01/leer-emisora-rc.html y http://cuadricopterodiyarduino.blogspot.com.es/2012/07/leer-emisora-rc-parte-2.html
13  International / Proyectos / Re: ayuda con registro simultaneo con entradas analogicas on: May 24, 2013, 05:32:06 pm
Acabo de consultarlo y el ADC tarda 100 microsegundos en tomar la lectura. Dependiendo de la precisión que necesites podría valerte. Para la señal de 100 Hz significa que puedes tomar 100 lecturas por ciclo (10 ms del ciclo dividido 100 microsegundos). Probablemente entre dos lecturas los resultados sean suficientemente parecidos para lo que necesitas.
14  International / Hardware / Re: Presentación y consulta. on: May 23, 2013, 11:28:27 am
Un condensador en no aumenta la potencia, nunca habría que ponerlo.

Si quisieras poner un LED de más potencia, por ejemplo sus características podrían ser: Tensión 2,5 V, intensidad 30 mA. Nuestras cuentas serían:

5 V de Arduino menos 2,5 V que caen en el LED, hacen 2,5 V que caen en la resistencia. Como queremos que circulen 30 mA (0,03 A) el valor de la resistencia será: 2,5 / 0,05 = 83 ohmios.

Sobre información para iniciarse en este mundo no te sabría decir un sitio o libro concreto pero por aquí hay compañeros que seguro te sabrán indicar ya que el tema ha salido en otras ocasiones.
15  International / Hardware / Re: Presentación y consulta. on: May 23, 2013, 10:50:21 am
Hola qvenmisakais, bienvenido.
Si tienes conocimientos de programación y además quieres no sólo montar si no entender la parte de electrónica, seguro que avanzas rápido y con gran satisfacción personal.

Un LED es un elemento (un diodo con emisión de luz) que su característica hace que caiga una tensión prácticamente fija en sus extremos, en torno a 2,5 V. (la tensión puede variar según el color del LED). Por tanto si alimentamos a tensiones superiores a ésa, por poco que sea, se producirá un aumento terrible de la intensidad, tanto que se quemará el LED, la salida de Arduino o las dos cosas. Para evitar eso se pone esa resistencia que limitará la intensidad que puede circular. Si Arduino saca 5 V y en el LED caen 2,5 V, para la resistencia tenemos otros 2,5 V que divididos para los 250 ohmios de la resistencia hacen una intensidad de 10 mA que es una buena cifra según las características del LED.
Pages: [1] 2 3 ... 35