
Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03

Este año, nuestro equipo ha hecho una gran cantidad de trabajo con el desarrollo de software dirigido por eventos for nuestro robot. Estos programas han permitido al equipo desarrollar con precisión programas autónomos e incluso eventos tele-OP repetibles. Como o trabalho de software que requer o complemento, decidimos compartir o conocimiento que hemos ganado no desarrollo de código impulsado por eventos para os robôs de FTC.
Etapa 1: ¿Qué Es La Programación Dirigida Por Eventos?
Em términos gerais, a programação dirigida por eventos, según Techopedia, é o desarrollo de programas que respondem a las entradas del usuario. Nesse sentido, muitos programas são considerados dirigidas por eventos, incluindo o programa tele-OP, que se basa nas entradas de um controle gerenciado por um humano para abrir um cabo cualquier acción. No embargo, nos términos do trabalho que novo equipamento tem estado haciendo, a programação dirigida por eventos se trata de software de criação a partir de diversas entradas; en otras palabras, documentamos eventos basados nas entradas de drivers e sensores, entonces podemos poner en cola estos eventos y utilizar o archivo para volver ejecutar o evento grabado.
Este método de desenvolvimento de programas para o novo robô tiene varias ventajas:
- Nos permite crear programas autónomos precisos. Dado que estamos criando o software no tempo real mientras se somete al evento, los valores del sensor recogidos y utilizados serán muy precisos, ya que provienen diretamente del evento original.
- Nos permite criar programas autónomos rapidamente. Hacer programas autónomos es tan sencillo como agarrar uma série de eventos y ajustar o evento según necesario mar.
- Nos permite crear procesos automáticos para la tele-op. Para acciones repetidas en tele-OP, a programação dirigida por eventos nos permite registrar estas acciones y assignar el evento a un botón durante os periodos en cual el condutor está manejando el robot. Estos eventos automatizados pueden ser influenciados por sensores para permitir que uma ejecución precisa.
Etapa 2: Flujo Lógico De La Programación Dirigida Por Eventos

A continuación se muestra el flujo lógico de um programa controlado por eventos: o rojo representa a criação de um evento e o azul representa a llamada del evento. Para criar um evento, se toma uma segurança de entradas para atravessar a ação do robô e se registra como eventos; estos eventos se escriben en un archivo. Para ativar um evento, veja o arquivo e as entradas para enviar um processador de eventos para converter o código de arquivo em uma ação do robô.
Etapa 3: Creador De Eventos


Los criadores de eventos é utilizado para documentar acionadores de "eventos" baseados em uma variedade de sensores e botones. A medida que o robô realiza ações no campo, um clase de criador de eventos está criando eventos para cada um de esas aciones en paralelo, fazendo referências ao evento classificado em um clase de evento. Después de ser creado, o evento se pone en uma cola de eventos en la clase de eventos: el primer event to the punto superior, luego el segundo evento to el punto superior y empuja hacia abajo los eventos debajo de el, y esto continúa hasta que o programa se detiene. Cuando se detiene o programa, los eventos se van um arquivo de formato legível por humanos, como um arquivo JSON. Este arquivo pode ser usado para mejorar las rutinas autónomas.
O código de ejemplo anterior configura os parâmetros para o evento, que neste caso é um giro usando um sensor IMU. A continuación, colamos el evento en la cola de eventos. Por último, truncamos el evento, que esencialmente está restableciendo el evento para que podamos usarlo para poner en cola los eventos futuros.
Etapa 4: Procesador De Eventos


As classes de eventos tomam o arquivo legível por el ser humanos produzidos na classe de criador de eventos e hacen para que cada evento na cola os dados que haga llamando a los métodos desvios em uma classe de processador de eventos. A continuación, la clase de procesador de eventos indica al robot cual event repite. Si se trata de um evento simples de "conducir derecho" ou um evento complejo lleno de distancias, giros y strafes, el procesador reproducirá cualquier evento que se le haya dado. Este processo é muy útil durante a autonomia, você que um equipo pode pegar sensores e acciones tele-OP antes do partido, luego simplemente reproduzindo os eventos em autónomo. Este proceso se llama repetición de memoria. Isso permite que um programa autônomo mar 100% configurável a través de um arquivo solo. Uma vez que se estabelece o criador e o procesador do evento, um equipo pode simplesmente mudar as rutinas autónomas a través del archivo legible por el ser humano.
El ejemplo anterior comienza primero comprobando o arquivo JSON de um evento y, uma continuação, comprobando ese evento utilizando uma instrucción del caso para ver qué tipo de evento es, neste caso, un giro usando el sensor IMU. Uma vez que deduz que é um giro usando um evento IMU, uma continuação, se procede ao evento, que normalmente implica a execução do código do evento com variáveis do evento que se passa para replicar o evento que se realiza anteriormente.
Recomendado:
Sistema de irrigação controlado por WiFi 'inteligente' alimentado por energia solar: 6 etapas (com fotos)

Sistema de irrigação controlado por Wi-Fi 'inteligente' alimentado por energia solar: este projeto usa peças solares DIY e 12v padrão do ebay, juntamente com dispositivos Shelly IoT e alguma programação básica em openHAB para criar uma rede elétrica de jardim e irrigação inteligente totalmente movida a energia solar setup.System Highlights: Fu
Programación Para Niños Y Niñas En Colômbia: 4 etapas

Programação Para Niños Y Niñas Na Colômbia: O governo nacional da Colômbia, mediante o Ministério de Educação e o Ministério das TIC, e em conjunção com o Programa Computadores para Educar, tem decidido dar um novo impulso a la iniciativa para Niños e Niñas na Colômbia
Interface Homem-Computador: Funcione uma garra (feita por Kirigami) por movimento de pulso usando EMG: 7 etapas

Interface Homem-Computador: Funcione um Gripper (feito por Kirigami) por Movimento de Pulso Usando EMG .: Então esta foi minha primeira tentativa em uma interface homem-computador. Eu capturei os sinais de ativação muscular do meu movimento de pulso usando um sensor EMG, processei-o por meio de python e arduino e acionou uma pinça baseada em origami
Juego De Coding (programación) Para Niños: 6 etapas

Juego De Coding (programación) Para Niños: Este é un instructable para criar um juego sencillo para ense ñ ar a programmar a ni ñ os. A ideia é muito semelhante ao Cubetto de Primo, mas a ideia é que o mar é completamente modificável e hackeavel. Por eso comparto el c ó digo
Ultimate Dry Ice Fog Machine - controlada por Bluetooth, alimentada por bateria e impressa em 3D: 22 etapas (com fotos)

Ultimate Dry Ice Fog Machine - Bluetooth controlada, alimentada por bateria e impressa em 3D: Recentemente, precisei de uma máquina de Dry Ice para alguns efeitos teatrais de um show local. Nosso orçamento não se estenderia para a contratação de um profissional, então foi isso que eu construí. É principalmente impresso em 3D, controlado remotamente via bluetooth, bateria powere