Show Posts
Pages: [1] 2 3 ... 43
1  International / Software / Re: Cómo controlar Par en Motor on: April 19, 2014, 06:21:39 am
Hola grasshopper.
No existe una curva característica par-velocidad para un motor ya que depende de la carga. Podría establecerse conociendo la carga en todo momento pero no lo veo práctico. Mi recomendación sin duda es que midas la intensidad como en principio tenías previsto y así sabes el par que el motor está ejerciendo.
Lo que sí existe para cada tipo de motor es una curva característica del máximo par que puede suministrar para cada velocidad, pero el par que está dando en cada momento dependerá también de la carga.
Sin duda esa lectura tendrá ruido pero como el pwm suele ser a cierta frecuencia y un motor es una carga muy inductiva, aunque la tensión de alimentación sea por pulsos pwm, la corriente no tiene esas variaciones, es prácticamente plano. Lo que te encontrarás al medir la corriente es ruido que puedes filtrar, no una señal en escalón.
2  International / Español / Re: Medir consumo eléctrico. on: April 19, 2014, 06:01:28 am
El SCT-013-000 es un transformador magnético. Sólo sirve para medir corrientes alternas.
3  International / Español / Re: Mal giro de motor brushles on: February 18, 2014, 05:55:53 pm
¿Has probado a intercambiar las posiciones de ese motor con otro de los que sí te funciona? Así verás dónde está el fallo.
4  International / Software / Re: PID on: February 16, 2014, 01:48:11 pm
Hola albenegra.

Veo un poco mezcla de cosas.
Lo primero yo me aclaro más para el disparo de los motores si lo expreso en microsegundos. Yo no utilizo la librería servo pero si la usas existe la instrucción
Code:
myservo.writemicroseconds();
en donde el pulso se escribe en microsegundos. Para armar los ESC de lo motores el pulso será de 1000 µs. Yo he buscado la linealidad de mi conjunto "pulso-ESC-velocidad motor-fuerza ventilador" midiendo la fuerza que ejercen desde 1000 µs hasta 2000 µs. El rango de movimiento mínimo y máximo en mi caso es 1100 y 1850 µs respectivamente y linealizando da fuerza cero para un pulso de 1040 µs. De este modo los pulsos a los motores derecha e izquierda queda como:
Code:
PulsoMotorIzquierda = 1040 + map(TiempoMedioCanalesRadio [2], 1100, 1850, 0, 700) + Outputroll;
PulsoMotorDerecha = 1040 + map(TiempoMedioCanalesRadio [2], 1100, 1850, 0, 700) - Outputroll;
donde TiempoMedioCanalesRadio [2] es el throttle de la emisora que para pruebas limito a 700 µs. Y Outputroll es la salida directa del PID. El PID tendrá como input el ángulo roll del IMU, como setpoint el valor de la emisora del correspondiente canal y mapeado para ser correlativo con las mismas unidades del input y los límites del output del PID será cuestión de ir probando, yo empecé con (-200, 200) pero lo dejé en ese punto así que no sé qué tal pueden estar.

A efectos prácticos si pones kp en el rango de 1 a 10 y pones ki y kd del orden de 0,00005 es lo mismo que poner ki y kd igual a cero.
También veo que tienes el PID cada 10 ms. Tienes que comprobar que el arduino es capaz de ejecutar todo el programa, filtro kalman y PIDs incluidos en menos de 10 ms.
5  International / Software / Re: PID on: February 10, 2014, 08:24:47 pm
Mi proyecto de quad no está terminado en absoluto. Lo tengo aparcado desde el verano sin haberle dedicado tiempo, creo recordar que en Julio publiqué el último artículo en mi blog.

Cualquier cuestión puedes plantearla aquí en el foro, así queda más información para otros usuarios al tiempo que también pueden hacer aportaciones.
6  International / Software / Re: PID on: February 07, 2014, 09:36:45 am
Puede influir y de hecho influye mucho. Lo lógico sería estar como poco en 20 ms.
7  Using Arduino / Motors, Mechanics, and Power / Re: strange problem with 4 ESC's and 4 motors on: January 12, 2014, 10:38:28 am
Its random- thats why I can use offsets....
I.e sometimes motor 1 starts at 1050 and motors 2,3,4 starts at 1051, sometimes motor 1,2 starts at 1051 and motors 3,4 starts itself after 2 seconds....randomly smiley-sad

Ok, then it isn't a problem in my opinion. A difference of 1 microsecond is very little.  A system  ESC -  brushless motor I think it hasn't more precission at start velocity but I think  it is enought.
8  Using Arduino / Motors, Mechanics, and Power / Re: strange problem with 4 ESC's and 4 motors on: January 12, 2014, 09:42:06 am
Ok, I didn't understand you.
What differences of microseconds there is for every motor when they start to move?
9  Using Arduino / Motors, Mechanics, and Power / Re: strange problem with 4 ESC's and 4 motors on: January 12, 2014, 09:25:17 am
The method explained by Robin2 is to do "a linear by software". But there is a method to do a real calibrate of ESC, i. e., to assign the min and max values of microseconds pulses to assign the min and max motor velocity.

Translated of my blog, http://cuadricopterodiyarduino.blogspot.com.es/2013/06/esc-parte-2.html

Quote
ESC Part 2

As a continuation of Part 1 ESC writing this post to discuss an issue I've had. It's probably obvious to those who come aeromodelling but someone scored themselves in the same situation as me.

I acquired two ESC to go conducting various tests. When the project was foremost went to buy the other two ESC but I found that they were gone. So what line to purchase two very similar units. In principle the only difference is that the former brought the connector to the "Monitoring balanced discharge" and the latter not .

Later testing with four motors and ESC realized that not everyone had the same answer. A pulse having the same speed would and other to another. I was first thinking they were different ESC bought twice but there was no correlation. After many tests , studies and information searching I found the answer and the solution to it . The ESC can be calibrated and in fact will be a routine for a modeler . It is simply tell the ESC the minimum and maximum points for the pulses. With a radio RC blocks corresponding lever taking it to the maximum and minimum travel . I've done with the program of motor control in setting the minimum and maximum 1000 microseconds 2000 microseconds. Taking this process in the same way in all four ESC "problem" disappears. And I looked establishing individual linearizations for each ESC programming in Arduino ...

piXel15 June 2013 , 23:32
How did you configure it from the program ? you can post something about these tasks ?

Cheyenne16 June 2013 , 15:08
Hello pixel.
I think the procedure is the same for all ESC as it is intended to do it directly from a station.
Remove power to the ESC. Carry the signal to the ESC the most , I chose 2000 microseconds. Connect power to the ESC. According models a type of beeps will sound and they hear nothing there to bring the signal to a minimum , I chose 1100 microseconds. They will resound confirmation beeps . Remove power to the ESC and turn it back on for normal use with the new settings.

If you search in Google there is a lot of links explaining how to calibrate ESC's. For example:

http://www.multiwii.com/wiki/index.php?title=ESC_Calibration
10  International / Español / Re: Control de pulsos con Pot. y Encendido leds con Serial on: January 04, 2014, 09:10:38 am
Has escrito:

  while (Serial.available() == 0);

lo que significa que mientras no haya nada en el buffer del puerto serie el programa está bloqueado dentro de esa instrucción. Para leer el puerto serie en general hay que poner un condicional, si hay algo en el puerto serie lo leo y si no sigo con mi programa.
11  Using Arduino / Motors, Mechanics, and Power / Re: strange problem with 4 ESC's and 4 motors on: December 30, 2013, 12:47:16 pm
Probably you have to calibrate your ESC, i. e., to mark the min and max pulses. In my blog in my signature I explain it but I'm sorry, it's in spanish.
12  International / Hardware / Re: Calculo del consumo de lilypad o arduino en general on: December 09, 2013, 04:33:18 am
No es aconsejable poner leds directamente en paralelo. Sin embargo sí puedes poner en paralelo el conjunto led+resistencia, varios de esos conjuntos pueden ser comandados por un sólo transistor.
13  International / Software / Re: Problema con contador, ayuda on: December 03, 2013, 02:45:53 pm
En este caso con eso solucionado.
14  International / Software / Re: Problema con contador, ayuda on: December 03, 2013, 12:31:30 pm
Sin más parte de código es difícil de saber. Una posibilidad es que la variable Contador la tengas definida como unsigned. Cuando vale 0 al restar 1, si es unsigned automáticamente su valor pasará a ser el máximo según su tipo. Ese máximo será superior a 999 y por tanto ejecutará el primer if haciendo que Contador valga 999.
15  International / Software / Re: Problema de codigo localizado pero no encuentro solucion. on: December 03, 2013, 12:27:19 pm
Mmmmmm... espera que adivino, ¿te da el error justo a partir de 327? Estás desbordando la variable "luz" que al ser int su valor máximo es 32.768. Si el valor de luxes vale 328 el valor de luz sería 32.800 que está fuera de su rango.
Pages: [1] 2 3 ... 43