Inhoudsopgave:
- Benodigdheden
- Stap 1: Circuito's
- Stap 2: Esclavo MODBUS En Raspberry Pi 3B
- Stap 3: Maestro LabVIEW (HMI)
- Stap 4: Maquina de Estados
- Stap 5: Voorpaneel
- Stap 6: Archief Python
- Stap 7: HMI
- Stap 8: Resultado Finale
Video: Simulación Transmisor De Temperatura Modbus (Labview + Raspberry Pi 3) - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
POST ESCRITO EN ESPAÑOL
Probeer een gelijktijdige temperatuurtransmitter, een elementaire primaire (sensor) en een mediaante uitvoering van een mogelijke potentiaalvariatie van de entrada. Voor het gebruik van informatie over de sensor (Elemento Secundario), en het implementeren van het protocol van MODBUS RTU, door middel van een seriële computer in de serie en de maestro.
Como maestro se elaboró un programa en labVIEW haciendo uso de la librería MODBUS que ya implementa. El esclavo es capaz de recibir las siguientes funciones del maestro:
- Functie 0X01
- Functie 0x02
- Functie 0x03
- Functie 0x04
- Functie 0x05
- Functie 0x06
Los registros implementados en el esclavo son:
- Directe MODBUS (16 bits)
- Velocidad de transmissie (16 bits)
- Medición de la temperatura (16 bits)
- Bit de fout (1 bit)
- Bit de selección (1 bit) C o F
- Nivel máximo de medición (16 bits)
- Nivel minimo de medición (16 bits)
Benodigdheden
- LabVIEW
- Raspberry Pi 3
- ADC MCP3008
- 1 Potenciometer
- Truien
- FTDI (FT232RL)
- Protobord
Stap 1: Circuito's
Circuito MCP3008 en Frambuesa Pi
Aansluiting Raspberry Pi 3 en FTDI:
- GND naar GND
- TX een RX
- RX een TX
Stap 2: Esclavo MODBUS En Raspberry Pi 3B
Como primer pazo necesitas configurar e installar t sistema operativo en tu Raspberry Pi 3B. Sugiero installeert NOOBS op de officiële pagina. Luego configureer voor Raspberry Pi 3B voor gebruik van Puerto Serial en Puerto SPI.
(Personalmente yo me conectó a mi raspi utilizando VNC Viewer para ello hay que activar el servidor VNC de la raspi)
Oorspronkelijke waarde van de ADC representeert de temperatuur van de temperatuur door de temperatuursensor en de graden Celsius en de eerste selectie van de temperatuur in de Fahrenheit.
U kunt uw computer gebruiken om de MODBUS te realiseren met Python die u kunt gebruiken in de bibliotheek. Para la simulación del transmisor se trabajo con 4 lijsten:
- Wikkelen
- Invoerregisters
- Holding registers
- Discrete ingangen
Cada lista se hizo de 6 elementos. Korte beschrijving van de los elementos de cada lista:
- coils_lista[0] = bit de selectie
- discrete_input [0] = bit de fout
- inputRegister_lista[0] = Valor del ADC (sensor van temperatuursimulatie door een potentiaalmeter) afhankelijk van de waarde van het bit van de selección.
- holdingRegister_lista[0] = directe toegang
- holdingRegister_lista[1] = maximale temperatuur
- holdingRegister_lista[2] = minimale temperatuur
- holdingRegister_lista[3] = verzendsnelheid.
El esclavo MODBUS een persoonlijke cuenta con ciertos parámetros iniciales como lo son:
- Valor de temperatura máxima 500 Celsius
- Valor de temperatura minima 200 Celsius
- Baudrate initiaal van 9600
- Richting de esclavo 1
- Unidad de medición inicial en Celsius.
De logische toepassing van het volgende:
In de eerste plaats om de buscó te leren van de volgende MODBUS en via de maestro, om te beginnen met de Python mediante el código:
En segundo lugar se buscó la función que el maestro sollicitaba para luego validar si la cantidad de salidas pedidas el maestro eran validas sino código de excepción 3, seguido de validar si el maestro pedidas el maestro eran validas sino general código de excepción 3, seguido de validar si el maestro pedidas una dire y door ultimo realizar la instrucción pedida el código de función leído.
Het is gelukt met het resto van de uitvoering van de functies.
Para ultimo paso en cada función crear un lista y mandar uno por uno el puerto serial la petición del maestro.
Aclaro que no valide si el CRC enviada al esclavo era el correcto pero si lo hice para el mensaje enviado al maestro. De functie van CRC kan worden aangepast aan de gebruiksvriendelijke link CRC MODBUS
CRC-calculator
Excepción MODBUS
Stap 3: Maestro LabVIEW (HMI)
La creación de un maestro que fuera de cierta manera amigable para un usuario final fue hecha t medio de labVIEW y librería MODBUS la cual facilitaba la creación de un maestro MODBUS RTU.
Bekijk meer informatie over de machines en laboratoria. Bekijk de volgende opties:
- in het
- sluit aan op: de API van een nieuwe maestro modbus met de mogelijkheid om SERIAL te gebruiken.
- escribir: aquí se utiliza la funcion write single holding register y write single coil
- leer: bekijk de configuratie van de geregistreerde en belangrijke rollen voor de lectuur van de maestro.
Stap 4: Maquina de Estados
vervolg explicare detalladamente la configuración en cada opción:
verbinding:
Gebruik de API voor het maken van een nieuwe MODBUS-selectie voor "New Serial Master", de volgende configuraties:
- baudrate
- Pariteit
- Seriële poort (Visa Resource)
- Serieel type (RTU)
- ID del esclavo.
opsteller:
En escribir solo me interesaba que el maestro pudiera cambiar la temperatura máxima y minima, el bit de selección, asignarle un nueva dirección al maestro y ultimo asignarle un nuevo Baudrate al esclavo e esclavo que ante que ante ya sabia a la que el maestro accedería. Voor wat betreft fueron-functies:
- Schrijf enkele spoel
- Schrijf enkele holding Register.
koeloven:
En leer solo me interesaba la lectura del bit de error y el input register asociado a mi variabele primaria.
Nuttige functies Fueron:
- Invoerregister lezen
- Lees Spoelen.
Stap 5: Voorpaneel
El panel frontal en labVIEW se trató lo mejor posible que fuera amigable para el usuario final. Door de volgende stap:
Installeer de DMC GUI-suite voor het lab. Bekijk de instellingen voor het oplossen van problemen en controles en indicatoren.
2 termómetros (1 para indicar la temperatura en Celsius en otro para indicar la temperatura en Fahrenheit).
Botón "Waarschuwing" que únicamente se enciende cuando el bit de error está encendido.
Botón para editar los rangeos de temperatura a medir (para que únicamente haga el cambio al registro cuando se es presionado el botón) caso contrario siempre los estuviera modificando lo cual causaría un funcionamiento incorrecto.
Botón para editar la dirección del esclavo (para que únicamente haga el cambio al registro cuando se es presionado el botón)
Botón para editar el baudrate del esclavo (para que únicamente haga el cambio al registro cuando se es presionado el botón)
Un botón para "Excepciones" (Para que genere un excepción dependiendo de la función MODBUS seleccionada)
Stap 6: Archief Python
Gearchiveerde gearchiveerde MODBUS (Temperatuurzender) met ADC-archieven ADC voor variabele temperatuursensoren (Gesimuleerde temperatuur van het kanaal 0 met potentiële).
Me quedo pendiente implementar las funciones 15 y 16.
Stap 7: HMI
Master Modbus RTU
Este es el maestro implementado en labVIEW. Hay cosas para mejorar, por ejemplo no pude corregir un error al conectar al primer intento, onderzoek y geen encontré un oplossing para aplicarla.
Stap 8: Resultado Finale
Espero ayudar een algunas personas een comprender mejor de comunicación modbus RTU en een implementatie en labVIEW.
Aanbevolen:
Digistump en Modbus RTU: 6 stappen
Digistump en Modbus RTU: degenen die mijn instructie over communicatie tussen Modbus RTU en een Raspberry Pi hebben gezien, weten dat ik een project plant voor het automatiseren van een kas. Ik heb 2 kleine printjes gemaakt die in een projectbox kunnen. De link naar de PCB's zal ik incl
LED-knipper met Raspberry Pi - Hoe GPIO-pinnen op Raspberry Pi te gebruiken: 4 stappen
LED-knipper met Raspberry Pi | Hoe GPIO-pinnen op Raspberry Pi te gebruiken: Hallo allemaal, in deze instructables zullen we leren hoe we GPIO's van Raspberry Pi kunnen gebruiken. Als je ooit Arduino hebt gebruikt, weet je waarschijnlijk dat we een LED-schakelaar enz. op de pinnen kunnen aansluiten en het zo kunnen laten werken. laat de LED knipperen of krijg input van de schakelaar zodat
Modbus TCP-communicatie tussen Arduino en industriële apparaten: 3 stappen
Modbus TCP-communicatie tussen Arduino en industriële apparaten: een industriële manier om een Arduino-bord met industriële HMI te besturen en te koppelen aan een industrieel netwerk met een Modbus TCP-communicatie
Raspbian installeren in Raspberry Pi 3 B zonder HDMI - Aan de slag met Raspberry Pi 3B - Uw Raspberry Pi instellen 3: 6 stappen
Raspbian installeren in Raspberry Pi 3 B zonder HDMI | Aan de slag met Raspberry Pi 3B | Je Raspberry Pi 3 instellen: Zoals sommigen van jullie weten, zijn Raspberry Pi-computers best geweldig en kun je de hele computer op een klein bordje krijgen. De Raspberry Pi 3 Model B heeft een quad-core 64-bit ARM Cortex A53 geklokt op 1,2 GHz. Dit zet de Pi 3 ongeveer 50
ESP32 Modbus Master TCP: 7 stappen
ESP32 Modbus Master TCP: In deze les programmeer je de ESP32-processor als Modbus TCP Master. We zullen twee apparaten gebruiken die deze processor bevatten: Moduino ESP32 en Pycom. Beide apparaten draaien in een MicroPytthon-omgeving. Onze Modbus Slave wordt een pc-computer met M