Programación red MODBUS Ensamblar y Tx una trama. Rx y Desensamblar una trama. Calculo CRC. Librerías con parámetros MODBUS y gestión del puerto serie.

Slides:



Advertisements
Presentaciones similares
Introducción Principios del Software E/S Principios del Hardware E/S
Advertisements

Manejo de archivos.
Tema #10. FICHEROS.
Introducción al lenguaje C
PROGRAMACIÓN EN C.
Tablas. Descripción general Introducción a las tablas Creación de tablas Uso de tablas.
Repaso para la construcción del intérprete 2012
Elementos básicos del Lenguaje
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
Fundamentos de la Programación Estructurada
Procedimientos y Funciones
Programación, Algoritmos y Estructuras de Datos
Funciones. Programación, Algoritmos y Estructuras de Datos.
1.2 Sintaxis del lenguaje Java.
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO
SOBRECARGA DE FUNCIONES
Ingeniero Anyelo Quintero
Ejemplos en C /* Ejemplos L/E en C con printf y scanf */ #include #include main(){ int i; int i; char nombre[30]; char nombre[30]; printf ("\nIntroduce.
Tablas y Cadenas CONTENIDO Tablas
String o Cadenas Prof. Gonzalo Pastor. Cadenas o String ► En C, una cadena o texto se define como un vector de caracteres de longitud determinada que.
Recursión Se dice que un método es recursivo si forma parte de sí mismo o se define en función de sí mismo. La recursión es un medio particularmente poderoso.
POO Java Módulo 3 Elementos de programas Identificadores
Tema 3 Entrada y Salida.
Archivos Programación.
Archivos. fopen(...) Para comenzar a utilizar un archivo primero se debe abrir, invocando a la función fopen(...) FILE * fopen(char* nombre_arch, char*
Signal, kill, sigaction y máscara de señales
LENGUAJE “C” Programación.
Tema 7c Entrada y salida de funciones. Funciones Funcion Entradas SalidasTareas.
Cadenas y apuntadores Programación.
JAVA J.A.C..
Tema 2: Los tipos de datos
Prog. Univ. Rodríguez Rey, Pablo Funciones Programación I.
Archivos.
Programación I Teoría VIII: Entrada/Salida
TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para.
Informática Ingeniería en Electrónica y Automática Industrial
Sintaxis de C# (Declaraciones y Tipos)
ATC-DistribuidasUniversidad de Oviedo / Dpto. de Informática XDR (External Data Representation) Tipos y codificación.
Valor X Valor Y Punto (0,0) Coordenadas.
CONTROL REMOTO SEGURO Álvaro Bravo Mercado Domingo Devotto Nelson Figueroa.
Introducción a los punteros Prof. Domingo Hernández.
Archivos Programación I MC Beatriz Beltrán Martínez.
Tema 2: Base de datos relacionales
Programación orientada a objetos. El método main es el comportamiento por el cual comienzan todos los programas en Java, de la misma forma en la que C,
Recursividad (2 clases) 1. Nivelación Funciones Menú Vectores String
 En computación es un conjunto de líneas de señal que el microprocesador o CPU utilizan para intercambiar datos con otros componentes como teclados,
HERRAMIENTAS DE SEGURIDAD
C# desde cero.
FUNDAMENTOS DE PROGRAMACIÓN
Teoría de Sistemas Operativos Sistema de I/O. 2 Introducción Una de las funciones principales del sistema operativo es el control de todos los dispositivos.
CARACTERÍSTICAS Es un lenguaje de programación estructurado de propósito general. Está estrechamente asociado al sistema operativo UNIX, ya que el propio.
7. FTP n 7.1 Objetivos y características.. u Objetivos. u Características. n 7.2 Parámetros de funcionamiento. u Parámetros. n 7.3 Funcionamiento. n 7.3.
Tipo de dato char El tipo de dato char ocupa un byte de memoria. Con un byte solo se puden guardar 256 números enteros sin signo, del 0 – 255. Si a cada.
Display de 7 segmentos Lectura y escritura en el monitor serial.
Ejemplos: float R[10] = {2, 32, 4.6, 2, 1, 0.5, 3, 8, 0, 12}; float S[] = {2, 32, 4.6, 2, 1, 0.5, 3, 8, 0, 12}; int N[] = {1, 2, 3, 6}; int M[][3] = {
Fundamentos de Programación
Conceptos.  Byte (0 a 255) = un byte  Short ( a ) = 16 bits de longitud  Integer ( a ) = 32 bits de longitud 
Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.
Módulo Serial Asicrónico SCI (Serial Communications Interface Module)
Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Práctica 3.
Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 4 Versión Diseño de tipos Igualdad, representación, código,
Las interfaces Predicate y Function Versión Unidad Didáctica 17 Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos.
Introducción al Lenguaje C (I) Tipos básicos, arrays y punteros Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión
Ing. Sanchez Castillo Eddye Arturo Escuela Académica Profesional de Ingeniería de Sistemas.
Paso de parámetros Diseño de programas iterativos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 7 Versión.
SISTEMAS DE AUTOMATIZACIÓN Y CONTROL ORIENTADO AL CONOCIMIENTO Y APLICACIÓN DE LOS SISTEMAS EMBEBIDOS SESION 04 José Luis Albites Sanabria MSc. Biomedical.
Conceptos Básicos de Programación
Programación red MODBUS
Tema 10b Manejo de archivos de caracteres en C. E/S para archivos Las funciones y tipos están definidos en FILE –Estructura que define un descriptor de.
Transcripción de la presentación:

Programación red MODBUS Ensamblar y Tx una trama. Rx y Desensamblar una trama. Calculo CRC. Librerías con parámetros MODBUS y gestión del puerto serie. Funciones principales:

Interfaces para Tx y Rx // Envía una trama int MODBUSEnvia( HANDLE hPort, int l, // Tamaño de la trama unsigned char *pb // Trama a enviar con CRC incluido ); // Devuelve 0 si ha habido error en la transmisión, 1 si no ha habido // Recibe una trama int MODBUSRecibe( HANDLE hPort, int lmax, // Tamaño máximo admisible de la trama unsigned char *pb // Trama recibida ); // Devuelve 0 si ha habido error en la recepción, >=1 indica la longitud de la trama

Estructura Programa Tx Gestion Puerto Serie Ensamblado Rx int main(){ unsigned char mc[8]={0xc7,0x04,0x04,0xb0,0x00,0x01,0x00,0x00}; unsigned char mcRec[100]; int l; hPort=OpenSerialPort("COM1",CBR_9600,8,NOPARITY,TWOSTOPBITS,10); if (hPort==INVALID_HANDLE_VALUE) { printf("Error abriendo puerto com1"); return 1; } MODBUSCRC(6,mc,mc+6); printf("\nTrama enviada: "); MODBUSImprime(8,mc); MODBUSEnvia(hPort,8,mc); l=MODBUSRecibe(hPort,100,mcRec); printf("\nTrama recibida: "); MODBUSImprime(l,mcRec); CloseSerialPort(hPort); return 0; }

Tx Escribir en el puerto serie cada byte. En serie.cpp: SerialSendByte(HANDLE hPort, BYTE byte) Informar de cualquier error. Funciones Tx:

Rx Escuchar constantemente el puerto serie. En serie.cpp: SerialReceiveByte(HANDLE hPort, BYTE *pbyte, BOOL *pTimeout) Informar de cualquier error. Chequear CRC trama recibida.(Final) Funciones Rx:

Interfaz Línea Comandos > 23 RL0 1 > 23 RL0 0 > 3 RL0 1 > 4 RL0 0 3 RL0 1 1 char 3 char 1 espacio  Para Leer de la línea de comandos: fgets (cadena, 100, stdin);  Interpretación de números enteros: casting a integer (ASCII Table)