SISTEMA DE CONTROL DE PEAJE CON ARDUINO C++, C# ó VB
ASPPTECHNOLOGY
0:00 / 0:00
SISTEMA DE CONTROL DE PEAJE CON ARDUINO C++, C# ó VB
420 просмотров · 2 мес. назад
ASPPTECHNOLOGY
780 подписчиков
420 просмотров · 2 мес. назад
Si no tienes arduino
• Descargar e Instalar el software de Arduino
--—--------------------------------------------------------------------
ENLACE DE LOS VIDEOS QUE NECESITAS VER PARA LA INTERFAZ
OPCION 1
VIDEO 1 COMO HACER SOFTWARE DE COBROS DE PEAJE EN C++
• PROGRAMA DE COBROS DE PEAJE EN C++
SI NO TIENES DEV C++ AQUI TE ENSEÑO COMO DESCARGARLO E INSTALARLO
• Como Descargar e Instalar DEV C++
--------------------------------------------------------------------------
OPCION 2
VIDEO 2 COMO HACER SOFTWARE DE COBROS DE PEAJE EN VISUAL BASIC.NET
• Cobros de peaje
-------------------------------------------------------------------
OPCION 3
VIDEO 3 COMO HACER SOFTWARE DE COBROS DE PEAJE EN C#
PENDIENTE
-----------------------------------------------------------------------------------------------------------
PROMPT PARA CODIGO DE ARDUINO
Genera un programa completo para Arduino usando la librería Servo.h
para controlar una barra automática de peaje.
La conexión es:
Servomotor en el pin 9.
LED rojo en el pin 13.
LED verde en el pin 12.
La comunicación con una computadora debe realizarse mediante el puerto serial utilizando:
Serial.begin 9600;
El Arduino debe recibir comandos mediante Serial.read:
Comando 'S': subir la tranca.
Comando 'B': bajar la tranca.
Al iniciar el Arduino:
El servo debe colocarse en 0 grados, indicando que la tranca está bajada.
El LED rojo debe quedar encendido.
El LED verde debe quedar apagado.
Cuando el Arduino reciba el comando 'S':
Mover el servo a 90 grados para levantar la tranca.
Encender el LED verde.
Apagar el LED rojo.
Cuando el Arduino reciba el comando 'B':
Mover el servo a 0 grados para bajar la tranca.
Encender el LED rojo.
Apagar el LED verde.
Importante:
No agregues botones, sensores, pantallas LCD, teclados ni otros componentes.
No modifiques los pines indicados.
No cambies los comandos 'S' y 'B'.
No utilices otras librerías aparte de Servo h
El Arduino solamente debe encargarse de recibir los comandos y mover la tranca.
No programes los 10 segundos dentro del Arduino. El tiempo de 10 segundos será
controlado por el programa de computadora que se comunica con Arduino.
El código debe utilizar Serial.available para comprobar si hay un comando
disponible y Serial.read para leerlo.
Genera únicamente el código Arduino completo, incluyendo:
#include Servo h
la declaración del objeto Servo,
las variables de los pines,
setup
y loop.
----------------------------------------------------------------------
PROMPT PARA C++ CON ARDUINO
Adapta este programa C++ para comunicarse con Arduino sin eliminar su lógica actual de menú,
vehículos, tarifas y caja.
COMUNICACIÓN:
Puerto: COM5
Velocidad: 9600 baudios
Usar windows.h y Windows API.
Abrir COM5 como "\\\\.\\COM5".
Utilizar CreateFileA, GetCommState, SetCommState, WriteFile y CloseHandle.
Configuración: 9600, 8 bits, sin paridad, 1 bit de parada.
COMANDOS:
'S' → Arduino sube la tranca: servo 90°, LED verde ON, rojo OFF.
'B' → Arduino baja la tranca: servo 0°, LED rojo ON, verde OFF.
Al realizar correctamente un cobro:
1. Actualizar C:\peaje\caja.txt.
2. Conectar al COM5.
3. Esperar 2 segundos.
4. Enviar 'S'.
5. Esperar 10 segundos.
6. Enviar 'B'.
7. Cerrar COM5.
Crear una función controlarTranca para esta secuencia.
Si COM5 está ocupado o no se puede abrir, mostrar un mensaje de error indicando que se debe
verificar la conexión y que ningún otro programa esté utilizando COM5.
Conservar todo el código original y entregar el programa C++ completo, listo para compilar
en dev c++.
AQUI COPIA EL CÓDIGO QUE YA TIENES DE C++:
----------------------------------------------------------------------------------------------
PROMPT PARA CLASE EN C# O VB.NET
NOTA ES EL MISMO PROMPT PARA AMBOS SOLO CAMBIA EL LENGUAJE
Crea una clase en C# ó VB llamada ControlPeaje para controlar una barra automática de peaje mediante Arduino.
La comunicación debe utilizar:
Puerto COM5
Velocidad 9600 baudios
Librería System.IO.Ports
La clase debe funcionar de la siguiente manera:
SubirTranca() debe abrir el puerto si está cerrado y enviar el comando "S" al Arduino.
Después de enviar "S", debe esperar 10 segundos y enviar automáticamente "B" para bajar la tranca.
BajarTranca() debe enviar "B" para bajar la tranca.
CerrarPuerto() debe cerrar correctamente el puerto.
Utilizar Try...Catch para controlar errores de comunicación.
La clase no debe depender de Button, Timer ni Label del formulario.
Además, crear un método GuardarCaja(valor) que guarde el valor recibido en:
C:\peaje\caja.txt
Si la carpeta C:\peaje no existe, debe crearla automáticamente.
No modificar ni generar código de Arduino. El Arduino ya está programado para recibir "S" para subir y "B" para bajar.
Entrega únicamente el código completo de ControlPeaje.vb, con comentarios explicativos.