controlar el ángulo de dirección del coche desde linux

Estoy tratando de enviar comandos de ángulo del volante a mi auto. Es un coche bastante reciente (Renault Espace IV). Estoy usando un puerto OBD2 para acceder a él y también tengo un ShieldCan. Logré leer datos del auto usando esas herramientas y pyserial, pero no para ingresar un ángulo.

¿Hay alguna forma de hacer esto? ¿Cómo podría, por ejemplo, ingresar "ángulo x °" y hacer que el volante cambie de ángulo?

Si esto no es posible con un automóvil de este tipo, ¿qué características debo buscar para que esto sea posible?

Cualquier ayuda será muy apreciada.

EDITAR: Dada la discusión en los comentarios, esta pregunta podría estar demasiado ligada al tipo de automóvil que tengo, pero creo que sería más interesante para todos saber qué sistemas/características debe tener un automóvil para permitirnos ingresar dirección ángulo.

Entonces, para reformularlo: ¿qué tipo de automóvil podría recibir entradas de ángulo de dirección? ¿Qué tecnologías se necesitan? ¿Debería buscar asistencia de mantenimiento de carril, o hay otras especificaciones que me permitirían hacer esto?

¿Tu Renault tiene dirección asistida por motor eléctrico?
Tiene "dirección asistida", ¿es eso?
La dirección asistida puede ser hidráulica o eléctrica. ¿El automóvil tiene una función de permanencia en el carril? esto está presente en algunos autos más nuevos con control de crucero avanzado.
No, no tiene una función de permanencia en el carril. @Ben si es hidráulico, supongo que no puedo hacer esto, ¿verdad? Entonces digamos que es eléctrico. ¿Cómo podría hacer esto? Más tarde averiguo si es eléctrico o hidráulico.
No estoy seguro de que puedas. La dirección asistida, ya sea eléctrica o hidráulica, es básicamente un multiplicador de par. Tampoco estoy seguro de cómo funciona la función "permanecer en el carril si se desvía" y si el bastidor tiene diferencias o si todo está en la computadora. Supongo que el bastidor debe hacerse de manera diferente.
Eché un vistazo rápido a Mitchell, parece que hay varios motores en el bastidor y en la columna de dirección que brindan esta función. (en un Infiniti)
Entonces, ¿no está todo en la computadora? Mmm. Entonces, @Pᴀᴜʟsᴛᴇʀ2 parecía estar sugiriendo que la dirección asistida por motor eléctrico permitiría ingresar ángulos de dirección. Pero estás diciendo que no usa la computadora.
en realidad, al leer más, la entrada mecánica para el volante termina en la columna y todo se controla electrónicamente. es genial.
@Ben genial! ¿Tienes algún enlace donde pueda leer más información sobre esto? ¿Qué es "Mitchell"?
Mitchell es un sitio de manual de servicio basado en suscripción. Si busca "cómo funciona la dirección asistida de infiniti", el sitio del automóvil y del conductor tiene una breve descripción general de cómo funciona el sistema.
eso debería ser "cómo funciona la dirección asistida eléctrica inifiniti" con respecto al comentario de @ Pᴀᴜʟsᴛᴇʀ2 No estoy seguro de si es posible con los sistemas tradicionales de dirección asistida eléctrica. Debería poder comunicarse con la computadora de los módulos de dirección asistida e intentar activar el motor, supongo. No estoy seguro de que esto sea posible sin invertir la rom de los módulos.
Considere crear una sala de chat y mover esta conversación a ella. Los comentarios se están haciendo bastante largos. Eso sí, tema muy interesante.

Respuestas (2)

El sensor de ángulo de dirección suele instalarse en automóviles con una función de control electrónico de estabilidad, como EBD/ESP. El sensor se utiliza para leer el motor de dirección para establecer las entradas que el conductor intenta dar al automóvil. En esta configuración es un sistema de sólo lectura.

Los automóviles más modernos que cuentan con estacionamiento automático o corrección de carril pueden alterar su ángulo de dirección electrónicamente, aunque me temo que no sé si esto se hace en la misma dirección que las salidas del sensor de ángulo de dirección en las que está leyendo, supongo que no. . Supongo que siempre se requiere el verdadero ángulo de dirección, de lo contrario, un sistema no sabría si debe aplicar la fuerza de la mano izquierda o derecha al volante electrónicamente.

Lo que está tratando de hacer es difícil y requerirá algo de piratería microelectrónica. También es posible que necesite leer algunos de los chips para extraer la memoria flash propietaria.

Probablemente tendrá más suerte si usa un automóvil de conducción por cable donde el volante no tiene una conexión mecánica con las ruedas. En su lugar, solo tendrá un sensor de posición. Necesitará un osciloscopio para ver qué tipo de señal pasa este sensor a la computadora para determinar la posición de la rueda. Una vez que obtenga la onda adecuada con el voltaje y el amperaje adecuados, puede comenzar a programar un programa para simular esto. Probablemente usará una raspberry pi para el control de la señal, pero potencialmente podría usar un puerto serie o incluso un puerto usb, pero es posible que necesite hacer una placa personalizada para que el voltaje y el amperaje coincidan.

necesitará el circuito para cortar la señal del volante real cuando se esté usando y restaurar la señal al volante cuando no se esté usando. También necesitará un circuito para controlar la posición del volante con los motores de retroalimentación de fuerza incorporados que tienen. esto también mantendrá el volante alineado.

Una cosa más a tener en cuenta es que si el volante está en la posición incorrecta al volver a la conducción normal, es posible que no gire correctamente, por lo que es posible que deba rectificarse guardando la posición en la que termina el volante y restableciéndola. la computadora usando algo para "aumentar" la posición como si estuviera dirigiendo a la posición actual del volante.

Sería mucho más fácil simplemente agregar un sistema de polea o cadena a la columna del volante de cualquier automóvil y controlarlo de esa manera usando un servomotor.

Con la solución de cadena, puede adaptar cualquier cosa, incluso Fords modelo t. Todo lo que necesitaría es el servomotor, una placa de control del motor y un par de interruptores para indicar el ángulo de giro máximo. la computadora movería la rueda de un lado a otro para determinar dónde está el centro y dónde están ambas paradas. necesitaría una configuración de recorte debido a que la alineación no es perfecta y está fuera de usar un controlador ps3 para conducir su automóvil.

La única forma de hacer esto usando el obd2 es si la compañía que fabricó el auto agregó un código especial para probar ese modelo usando algunas de las entradas reservadas. Para mí, esto suena extremadamente improbable, pero a medida que más autos se automatizan, existe la posibilidad de que algunos modelos nuevos tengan esto. Deberá piratear cualquier código que tengan e intentar averiguar qué señales se utilizan para que el automóvil haga lo que desea. En ese momento, debe obtener su escáner obd2 de servicio patentado y descompilarlo para obtener el código que necesita para enviar su computadora obd2.

Quédese con la transmisión por cadena en un modelo t, será mucho más fácil.