Tengo una plataforma giratoria de 1 eje (x), que gira bastante rápido ~ 300 RPM. Quiero poder detectar con un buen grado de precisión cuántos grados ha recorrido desde su posición inicial y la velocidad a la que se está arrastrando actualmente.
Por ejemplo: Piense en un reloj que tiene una sola manecilla min. La manecilla de las horas se desplaza por la esfera del reloj y quiero medir dónde se encuentra en la esfera del reloj en un momento dado en grados.
"3" en punto sería 90 grados, "6" en punto sería 180 grados, "9" en punto sería 270 grados, "12" en punto sería 0 grados,
tengo los dos sensores
Mis preguntas son:
Para un problema como este, normalmente utiliza un codificador incremental óptico . Dependiendo del tipo da una serie de pulsos por revolución, por lo que su resolución dependerá de este número. También le da información sobre la dirección de rotación. Puede encontrar la velocidad cronometrando el período de tiempo entre pulsos.
Consulte también esta respuesta para obtener más información sobre cómo funcionan los codificadores incrementales y absolutos.
Si no puede encontrar un codificador adecuado y su motor funciona sin problemas, puede ser suficiente tener solo un pulso por revolución. La posición actual se puede derivar del tiempo transcurrido desde el último pulso dividido por el tiempo entre pulsos (= período de rotación). Al igual que el codificador óptico, desea una solución sin contacto. La óptica es una posibilidad. Utilice un sensor reflectante (como Vishay CNY70 ) para detectar una pequeña área reflectante en un disco mate (o viceversa). También es posible una solución magnética y, a menudo, se usa en entornos sucios donde el sensor óptico no funciona. Un pequeño imán en el eje del motor hará que un sensor de efecto Hall (como Infineon TLE4913 ) emita un pulso cada vez que pase.
Pensarías que el giroscopio sería ideal porque te da velocidad angular. Sin embargo, para encontrar la rotación, debe integrar la velocidad angular a lo largo del tiempo, y no siempre es fácil mantener la precisión porque también integra el error, que será cada vez más grande, a menos que haya una manera de recalibrar cada rotación.
Como le comenté a Mike, cuando se usa un acelerómetro y un motor que no está montado verticalmente, el acelerómetro responderá a la gravedad de la tierra y la superpondrá como una onda sinusoidal a la lectura de la aceleración centrífuga. Esto debe filtrarse, pero también se puede usar para contar rotaciones directamente: obtienes 1 ciclo sinusoidal por revolución.
punto de atención importante:
Tanto un giroscopio como un acelerómetro tendrían que montarse en el eje, y tendrá que lidiar con el problema de conectar la alimentación y las lecturas a una posición fija.
Las RPM generalmente se calculan utilizando un sistema de tacómetro mediante el cual se genera un pulso una vez (a veces dos veces, consulte los ventiladores de la CPU) para cada revolución. Estos luego se cuentan durante un período predeterminado y las RPM se calculan a partir de eso.
En cuanto a la posición en la rotación, eso es más complicado. Debido a la velocidad de rotación que está utilizando, no se le ocurre mucho para informar con precisión la posición de rotación, no es que responda lo suficientemente rápido como para hacerlo bien.
Si conoce la velocidad de rotación (RPM) con bastante precisión, entonces puede calcular cuánto ha girado más allá de un punto conocido en el tiempo transcurrido, por ejemplo, cuánto tiempo desde el último pulso del tacómetro, para dar una posición bastante precisa si la velocidad es constante.
Otra opción sería tener múltiples sensores en un anillo alrededor del eje y un punto de referencia en el eje que pasa por estos sensores, ya sea magnético u óptico, pero eso solo brinda una resolución limitada. Estos se conocen como codificadores ópticos absolutos (o codificadores magnéticos absolutos, si está utilizando magnetismo).
Los codificadores incrementales ópticos, como los que se usan en las ruedas del mouse, etc., son una forma de hacerlo, pero no brindan una posición absoluta, solo una relativa, por lo que también deberá acoplarlo con algún punto de referencia absoluto. .
Mientras que un giroscopio en teoría te da información para obtener la respuesta, en la práctica el ángulo tendrá tanto error después de unos segundos que será inútil. Los giroscopios MEM emiten una señal que indica la velocidad de rotación. Esto debe integrarse para obtener el ángulo. Sin embargo, el desplazamiento, la deriva y otros errores se acumularán continuamente en la integral. Para la mayoría de los giroscopios MEM, el resultado es inútil después de un segundo o unos pocos segundos.
Tenga en cuenta que los giroscopios mecánicos reales no tienen este problema, ya que inherentemente dan una señal de posición angular, no una velocidad angular. Sin embargo, son grandes, toscos, consumen una potencia significativa, son caros y deben "enjaularse" durante un minuto o decenas de minutos sin movimiento para calibrarlos antes de usarlos.
Si la tasa de rotación es razonablemente constante, un tic una vez por revolución es suficiente. He trabajado en varios letreros LED giratorios donde esa era la única información sobre la posición. El sistema asumió que cada rotación tomaría el mismo tiempo que la rotación anterior. La pantalla se estiró durante el encendido cuando el motor estaba acelerando, pero funcionó bastante bien en estado estable.
Justo esta primavera aconsejé a un estudiante de secundaria que quería hacer algo similar. Le di un solo optointerruptor, que usó para calcular el tiempo por rotación y generar el reloj de píxeles para la siguiente rotación. Su motor era un gran ventilador tendido de lado en el suelo, con la placa alimentada por batería y montada en el medio. Deletreaba "PROYECTO SENIOR 2011" usando 7 LED, y todos quedaron bastante impresionados.
Si el eje es horizontal, puede usar un acelerómetro para medir la velocidad de rotación y obtener una idea del ángulo actual observando la gravedad.
Dependiendo de cómo funcione el motor, es posible que la electrónica de conducción del motor informe la posición con regularidad. Si se trata de un CC sin escobillas y tiene acceso al controlador, esta información está disponible.
La comunicación con el tablero giratorio desde el exterior se puede hacer de varias maneras. En el letrero LED giratorio, usamos un eje hueco con un LED IR en el extremo fijo y un fotodiodo en el extremo giratorio. Esto se usó como un flujo de datos unidireccional a aproximadamente 1 Mbit/s. También es interesante obtener energía para el tablero giratorio. El estudiante de secundaria usó pilas. Eso fue fácil y funcionó bien para su presentación. Una versión del letrero LED necesitaba 70 W y tenía que funcionar continuamente, por lo que eso no era posible. Usamos un transformador donde el primario y el secundario podían rotar uno con respecto al otro. Esto fue impulsado por un conmutador a alta frecuencia. Se utilizó un pequeño devanado secundario en el lado fijo para la retroalimentación, y el secundario giratorio se reguló lo suficientemente bien.
Medir la velocidad angular es exactamente lo que hace el giroscopio. En el caso de su giroscopio, la salida será de escala completa a una velocidad de 300 grados/seg. Un acelerómetro lineal también podría medir la velocidad angular si se alinea hacia el eje de rotación ya que la aceleración = , es decir, velocidad angular pero esto sería menos conveniente.
Para medir el desplazamiento angular, necesitaría integrar la velocidad angular a lo largo del tiempo y tendrá dificultades para obtener resultados precisos durante largos períodos de tiempo debido a la compensación y la deriva.
dhsieh2
NickHalden