RandomRace.ru - búsqueda de dirección para tontos (inicio)

¿De dónde vino la idea?
Un viejo amigo mío se comprometió a discutir su nueva aventura conmigo: a todos nos gustaban las carreras de aventura, de las cuales hay muchas en nuestra área, pero eso no permitió que una persona viviera la previsibilidad de una carrera de aventura clásica: los puntos de control (CP) son colocados por personas, lo que significa pueden ser al menos un poco predichos.Así es como apareció RandomRace.ru (brevemente - RR).Entonces, la idea principal de RR es lanzar al aire engranajes de carreras en las bolas, a una altura aleatoria, las bolas explotarán y los engranajes caerán en paracaídas. KP entregará sus coordenadas GPS al servidor de la carrera, y los participantes las buscarán. En principio, las reglas de la competencia están diseñadas para que los participantes devuelvan las sondas KP a los organizadores. Naturalmente, además de esas sondas que se distinguieron por una mayor aleatoriedad y volaron en algún lugar en ...muy lejos Dichos organizadores deben buscarlos por su cuenta. Dio la casualidad de que, como resultado, tomé la solución técnica de la tarea de los "últimos 100 metros", cuando los organizadores llegaron al lugar, realmente quiero encontrar el punto de control, y las coordenadas son inexactas. Para este propósito, se planeó utilizar la búsqueda de dirección: cada sonda lleva un transmisor de radio y los organizadores llevan un receptor de búsqueda de dirección.Requisitos generales del transmisor:
- peso y volumen ligeros- alimentado por una celda de polímero de litio (batería de un teléfono celular)- duración de la batería de al menos 24 horas- precio bajo, porque la probabilidad de perder el dispositivo es considerableRequisitos generales del receptor:
- peso y volumen moderados- antena direccional - indicaciónsonora y visual del nivel de señal- duración de la batería de al menos 2 horas- rango de detección del receptor - desde 100 metros en el bosque.Más tarde, nuestro equipo comenzó a participar en el Global Balloon Space Challenge , así como en otros eventos, y, por supuesto, se usaron balizas en todos los casos.Frecuencias y antenas
Las frecuencias estándar de "caza de zorros" tuvieron que abandonarse debido a las dimensiones de las antenas, y como resultado de una deliberación dolorosa, se decidió utilizar la frecuencia de 433 MHz. Condicionalmente sin licencia, no requiere antenas grandes, hay una serie de transmisores y receptores a la venta para este rango. La antena del transmisor debe ser omnidireccional, la antena del receptor, por el contrario, orientada estrechamente. En el caso del transmisor, no había una opción particular: una antena de resorte o una impresa. Para el receptor, la elección es más amplia: marco, marco clásico "zorro" + pin, doble o triple cuadrado, yoga, canal de onda. Otra tarde en el foro de Sugary meditaciones dolorosas llevaron a la conclusión de que, después de todo, un doble cuadrado. Este es un compromiso entre un tamaño distinto, simplicidad y calidad de recepción. El tamaño de toda la antena es de aproximadamente 18 * 18 * 8 cm. El cuadrado frontal es un vibrador abierto, el trasero es un poco más grande, un reflector cerrado. La placa del receptor se montó en el espacio del vibrador. La geometría de tales antenas es deseable para resistir con la mayor precisión posible. El material para la fabricación de la antena es un tubo de freno para el "Lada" y varias piezas de plexiglás, obtenidas en la despensa.
Dos cuadrados del tubo están sujetos por una parte diagonal y dos placas trapezoidales en ángulo en las esquinas. Toda la estructura se ajusta de forma fiable con bridas. Para la fabricación de piezas, imprimí los dibujos a escala real y los pegué en plexiglás. Luego taladró agujeros y cortó los contornos con una sierra de calar. A pesar de mis preocupaciones, la antena resultó ser bastante rígida, pero al mismo tiempo, el plexiglás era un material demasiado frágil y se rompió rápidamente. La segunda vez, las partes no metálicas de la antena se hicieron de acuerdo con los mismos dibujos en un cortador láser de madera contrachapada (gracias, Fablab Polytechnic ). Se agregaron una empuñadura de pistola y agujeros de alivio a los dibujos. Para proteger contra el agua, la madera contrachapada se recubrió con barniz acrílico en aerosol.Aprendiendo a cocinarlos
Para todos los componentes electrónicos del proyecto, se utilizaron microcontroladores de la serie STM8, no los más populares, pero me gustan. El bajo precio, que es una de las principales condiciones en este proyecto, una periferia rica, la capacidad de alimentar micrones directamente desde una batería de Li-Po, la falta de pretensiones en general y las buenas placas de demostración son lo que me atrae a estos chips. También vale la pena señalar la simplicidad de los tableros, porque MK cosido en 1 cable (a veces 2 - todavía necesita reinicio). El depurador de hardware funciona en la misma interfaz.Para actualizar el microcontrolador STM8, necesita un programador compatible. El programador se puede comprar por separado, pero es más fácil y económico tomar uno de los tableros STM8-something_disc-DISCOVERY. Para usar el programador incorporado, es necesario soldar 2 puentes y conectar los pines de la placa al dispositivo de destino. Personalmente, utilizo un programador que originalmente se desconectó de STM8S-DISCOVERY, y para el flasheo masivo uso un adaptador especial con dos cocodrilos y dos sondas del probador. Desafortunadamente, gcc no se transfiere al núcleo STM8; debe usar versiones gratuitas de compiladores pagos. En mi caso, esto es razón, el entorno de desarrollo es stvd.La primera versión de la electrónica.
Transmisor
Para la primera versión del dispositivo, se compraron módulos Telecontrolli. Para transmisores - RT4-433 (más tarde RT14-433). Al principio parecía una buena opción. Para controlar los módulos en el transmisor, se utilizó una de las MCU más baratas: STM8S003F3, en el paquete SO-16, que era conveniente para soldar. El esquema banal es en realidad el MCU, un condensador obligatorio, un condensador de filtrado en el circuito de alimentación, un módulo de radio, un LED y una resistencia. Aproximadamente una vez por segundo, el transmisor emite un pulso modulado am de aproximadamente medio segundo con una frecuencia de 200 Hz y parpadea un LED. Esta variación del faro ha sobrevivido a varias pruebas y encarnaciones.Se utilizaron tableros saqueados hechos
a sí mismos, PP chino con seeedstudio;
Antenas - muelles e impresas.
También hubo experimentos con diferentes LED y diferentes corrientes; por ejemplo, existía la idea de que los destellos cortos y agudos de un color azul antinatural desde el interior de un contenedor transparente podrían ayudar a encontrar el contenedor en el bosque por la noche. Los módulos de radio también variaron, dependiendo de las condiciones del mercado para los componentes de radio.Receptor
Para el buscador de dirección del receptor, se utilizaron módulos RRQ14-433 del mismo Telecontrolli. El módulo tiene dos salidas: los datos recibidos y el nivel analógico del AGC, también es RSSI. Ambos están conectados al microcontrolador STM8S903C, pero la salida de datos fue por si acaso, el firmware ignoró la señal. RSSI se encuestó continuamente utilizando el controlador ADC incorporado. La indicación de la intensidad de la señal debe ser doble: por un lado, visualmente, con números moderadamente grandes visibles tanto de día como de noche. Por otro lado, debe adjuntar un sonido, de modo que no tenga que mirar constantemente el indicador. Bueno, las tradiciones de Hollywood son así: debería chirriar. El controlador era nuevamente de la familia STM8S, pero el otro era el STM8S903, equipado con una fuente de voltaje de referencia incorporada, que es necesaria para medir RSSI. Al indicador se le asignó un indicador LED de 7 dígitos y dos segmentos.Realmente no quería hacer circuitos clásicos tipo arduin con una montaña de resistencias, indicadores dinámicos y otras cosas, por lo que el controlador LED integrado STP16CP05 entró en funcionamiento. Este es un registro de desplazamiento de 16 canales con estabilización de corriente en cada salida, y el valor actual se establece mediante una resistencia a la vez para todas las salidas. 16 canales: solo 2 dígitos de 7 segmentos + puntos decimales. El indicador en sí mismo es simplemente un indicador de un tamaño distinto con un ánodo común. El sonido que hice en el último momento a través de los auriculares del reproductor que vinieron a la mano. Los auriculares se conectaron a través de una resistencia (para no atormentar a MK con altas corrientes), a las salidas directas e inversas del temporizador MK. Como el módulo de radio requiere 5V, tuve que elevar el voltaje de suministro (modelo LiPo de 2 celdas a 800mAh) y configurar LDO a 5V (no está en el circuito).No quería hacer un escándalo con los indicadores dinámicos, por lo que el controlador LED integrado STP16CP05 entró en funcionamiento. Este es un registro de desplazamiento de 16 canales con estabilización de corriente en cada salida, y el valor actual se establece mediante una resistencia a la vez para todas las salidas. 16 canales: solo 2 dígitos de 7 segmentos + puntos decimales. El indicador en sí mismo es simplemente un indicador de un tamaño distinto con un ánodo común. El sonido que hice en el último momento a través de los auriculares del reproductor que vinieron a la mano. Los auriculares se conectaron a través de una resistencia (para no atormentar a MK con altas corrientes), a las salidas directas e inversas del temporizador MK. Como el módulo de radio requiere 5V, tuve que elevar el voltaje de suministro (modelo LiPo de 2 celdas a 800mAh) y configurar LDO a 5V (no está en el circuito).No quería hacer un escándalo con los indicadores dinámicos, por lo que el controlador LED integrado STP16CP05 entró en funcionamiento. Este es un registro de desplazamiento de 16 canales con estabilización de corriente en cada salida, y el valor actual se establece mediante una resistencia a la vez para todas las salidas. 16 canales: solo 2 dígitos de 7 segmentos + puntos decimales. El indicador en sí mismo es simplemente un indicador de un tamaño distinto con un ánodo común. El sonido que hice en el último momento a través de los auriculares del reproductor que vinieron a la mano. Los auriculares se conectaron a través de una resistencia (para no atormentar a MK con altas corrientes), a las salidas directas e inversas del temporizador MK. Como el módulo de radio requiere 5V, tuve que elevar el voltaje de suministro (modelo LiPo de 2 celdas a 800mAh) y configurar LDO a 5V (no está en el circuito).Este es un registro de desplazamiento de 16 canales con estabilización de corriente en cada salida, y el valor actual se establece mediante una resistencia a la vez para todas las salidas. 16 canales: solo 2 dígitos de 7 segmentos + puntos decimales. El indicador en sí mismo es simplemente un indicador de un tamaño distinto con un ánodo común. El sonido que hice en el último momento a través de los auriculares del reproductor que vinieron a la mano. Los auriculares se conectaron a través de una resistencia (para no atormentar a MK con altas corrientes), a las salidas directas e inversas del temporizador MK. Como el módulo de radio requiere 5V, tuve que elevar el voltaje de suministro (modelo LiPo de 2 celdas a 800mAh) y configurar LDO a 5V (no está en el circuito).Este es un registro de desplazamiento de 16 canales con estabilización de corriente en cada salida, y el valor actual se establece mediante una resistencia a la vez para todas las salidas. 16 canales: solo 2 dígitos de 7 segmentos + puntos decimales. El indicador en sí mismo es simplemente un indicador de un tamaño distinto con un ánodo común. El sonido que hice en el último momento a través de los auriculares del reproductor que vinieron a la mano. Los auriculares se conectaron a través de una resistencia (para no atormentar a MK con altas corrientes), a las salidas directas e inversas del temporizador MK. Como el módulo de radio requiere 5V, tuve que elevar el voltaje de suministro (modelo LiPo de 2 celdas a 800mAh) y configurar LDO a 5V (no está en el circuito).El indicador en sí mismo es simplemente un indicador de un tamaño distinto con un ánodo común. El sonido que hice en el último momento a través de los auriculares del reproductor que vinieron a la mano. Los auriculares se conectaron a través de una resistencia (para no atormentar a MK con altas corrientes), a las salidas directas e inversas del temporizador MK. Como el módulo de radio requiere 5V, tuve que elevar el voltaje de suministro (modelo LiPo de 2 celdas a 800mAh) y configurar LDO a 5V (no está en el circuito).El indicador en sí mismo es simplemente un indicador de un tamaño distinto con un ánodo común. El sonido que hice en el último momento a través de los auriculares del reproductor que vinieron a la mano. Los auriculares se conectaron a través de una resistencia (para no atormentar a MK con altas corrientes), a las salidas directas e inversas del temporizador MK. Como el módulo de radio requiere 5V, tuve que elevar el voltaje de suministro (modelo LiPo de 2 celdas a 800mAh) y configurar LDO a 5V (no está en el circuito).
El firmware del controlador mide continuamente el nivel de RSSI, intenta encontrar los picos allí al momento de recibir la señal de radio, contarlos en ciertos "loros" y mostrarlos en el indicador. Estos loros se convierten en la duración de "pitidos" periódicos. A 0 loros, el buscador de dirección es silencioso; a 99, chilla continuamente. El firmware del transmisor se rehizo 100.500 veces, principalmente debido a un recuento RSSI distinto. El código de allí no se lo mostraré a nadie, no puedes asustar a la gente así.Primero pancake.com
Las primeras pruebas y competiciones que usaron el sistema "Encuéntrame" obtenido fueron generalmente exitosas, el buscador de dirección permitió encontrar una sonda caída en el bosque un par de veces. La antena mostró una orientación aceptable, las sondas, como se esperaba, se pueden escuchar en la radio. La distancia de detección en el bosque también está dentro de lo razonable. De los descubrimientos desagradables, fue que los parámetros de los módulos transmisores "caminan" de una instancia a otra, tanto en frecuencia como en potencia. Diferentes módulos chirriaron en los canales 32-42, con el esperado 34. El nivel de RSSI en el receptor también se comportó un tanto extraño, pero algo de chamanismo en el algoritmo del receptor nos permitió ver en el indicador un cierto valor similar al nivel de señal del transmisor en algunos loros. En previsión de hacer otro lote, de repente se hizo evidenteque los módulos transmisores clave para todo el proyecto se han vuelto mucho más caros y en general casi han desaparecido del mercado. En la melancolía, tristemente rebusqué en los tesoros de aliexpress, sin mucha esperanza de encontrar un reemplazo.Y aqui.
Y luego sigue .Enlaces:Continuación: geektimes.ru/post/270170Aproximadamente lo mismo en inglés: www.randomrace.ru/2015/gsbc/preparation/transmitter/engRandomRace: randomrace.ru (las competencias más cercanas: www.randomrace.ru/2016/spring )Fuentes de todo el firmware: sourceforge.net/projects/randomracebeaconGBSC: www.balloonchallenge.org/teams/15Source: https://habr.com/ru/post/es389915/
All Articles