LDmicro y Arduino.

El siguiente articulo es una traducción de LDmicro and Arduino y tiene por objetivo presentar la manera de desarrollar un programa con lenguaje escalera en el software LDmicro y cargarlo de manera exitosa en Arduino.

Esto fue probado en Windows 7 32 bits, Arduino 1.0.5,y LDmicro.

LDmicro es un software gratuito para escribir y simular programas en lenguaje escalera. Cuando el programa en lenguaje escalera es simulado exitosamente puede ser compilado para AVR o Microcontroladores PIC.

Sin embargo el Atmega de Arduino no es soportado, afortunadamente LDmicro puede “compilar” el codigo en un ANSI C. Asi que veamos como ejecutar el codigo en Arduino.



Pequeña introducción.

Cuando seleccionamos ANSI C code como el tipo de microcontrolador en el menu de configuración de LDmicro, despues de compilar obtendremos el codigo C. Este codigo contiene toda la lógica, pero requiere de un archivo “encavezado” llamado ladder.h el cual esta perdido. Entonces nosotros debemos implementar este archivo. Digamos que tenemos un contacto de entrada llamado “boton” entonces debemos implementar la función:

BOOL Read_U_b_Xboton(void) {
return digitalRead(10); // button on digital pin 10
}

Similar a los otros pines de entrada y salida, nosotros tenemos que escribir la capa entre el programa de lenguaje escalera y el Hardware real de Arduino. Esto puede ser mas que un simple llamado de “digitalRead” o “digitalWrite”. Por ejemplo nosotros podemos controlar servomotores, leer información de un sensor de proximidad. La posibilidad de escribir esta capa es muy poderosa. La lógica de programación en lenguaje escalera puede ser usada para la lógica principal de la aplicación y C solo para la capa de hardware.

Para tener mas información es necesario leer el archivo C generado, contiene mas información.

Generando el archivo ladder.h

Si nosotros necesitamos solo el control directo de pines de entrada/salida digitales de Arduino ladder.h puede ser generado facilmente por nosotros. Adam escribio un script PHP que puede hacr ese trabajo. Requiere el codigo generado y correlacionar el nombre de la variable que usamos en el lenguaje escalera y el número de pin de Arduino. Esto generara ladder.h con todas las funciones nesarias y función setup.

Script PHP Adam

Paso a paso

Hagamoslo paso a paso, El codigo ejemplo esta disponible para descargar: Ejemplo

1. Escribe el codigo en LDmicro.

2. Selecciona como Microcontrolado “ANSI C Code”.

3. Compila como ladder.cpp (guardalo como archivo *.cpp NO como archivo *.c, De otro modo Arduino no podra compilarlo)

4. Prepara la correlación para pines de entrada/salida de Arduino. Este archivo es llamado pinmap.ini. Mira el ejemplo para detalles

5. Genera el archivo ladder.h con el script php: ladder-gen.php.

6. Crea el sketch en Arduino.

#include “ladder.h”

void setup() {
PlcSetup();
}

void loop() {
PlcCycle();
delay(10);
}

Ve el ejemplo para mejor eimplementación (Esto es solo ilustrativo, y no aplica correctamente para timers).

7. Compilalo con el editor de Arduino y carga el archivo.

8. Eso es todo.

Suerte y exito en sus programaciones.

Bookmark the permalink.

2 Responses to LDmicro y Arduino.

  1. Luigi Doria says:

    Hi,
    how to write a program on LDmicro where there are analog inputs and make them recognize the Arduino microcontroller ??
    I have no problem with the digital call them d2, d3, …
    hello
    Louis

    • admin says:

      Hi Luigi, we have not tried this option, but it could be possible just with the use of the analog read in Ldmicro… we will try to do this in another post. thanks for the comment & the visit.

Leave a Reply

Your email address will not be published. Required fields are marked *