Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Manual Guia de SoapBox Snap - Como Convertir Arduino en Un PLC PDF
Manual Guia de SoapBox Snap - Como Convertir Arduino en Un PLC PDF
SoapBox Snap está diseñado para ser modificado y ampliado. Además de ser
liberado bajo la licencia de código abierto GPL, la aplicación tiene muchos
puntos de extensión donde los programadores .NET pueden añadir nuevas
características. Los principales posibilidades de expansión del software son:
2
Puede agregar nuevas instrucciones de lógica de escalera
Puede agregar nuevos controladores para el Runtime
Puede agregar nuevos Runtime de ejecución, por lo que la lógica que se
escribe con SoapBox Snap puede ejecutarse en otras plataformas de
hardware
Puede agregar nuevos editores de lenguaje, excepto el de contactos
logicamente
Requisitos previos
SoapBox Snap requiere:
Código Fuente
SoapBox Snap está escrito en C # con Visual Studio 2010 Professional. El
código fuente está disponible a través de nuestro SVN público SVN
(Subversion) repositorio en http://svn.soapboxsnap.com/svn .
Soporte
En primer lugar, comenzar con la Introducción Tutorial .
3
1.2. Instalación SoapBox Snap
(Consultar el documento fuente "Getting Started" para SoapBox Snap)
Una vez que haya descargado, haga doble clic en el programa de instalación
que ha descargado, y se instalará en su ordenador. Siga las instrucciones del
asistente de instalación. Usted también tiene que instalar los controladores de
Phidgets (escoger el apropiado 32 o 64 bits del instalador de descarga.
Inicio Rápido
4
Creación de una nueva solución
Haga clic en Filer-> New ... en el menú principal. Esto abrirá una aplicación
vacía. Busque el "Solution Explorer". Es una pequeña ventana que contiene
un elemento: Solution [].
5
Si expande la flecha (o signo más) junto al elemento Runtime, verá dos
elementos debajo de él:. Logic y Device Configuration (configuración de
dispositivos). Logic es una estructura de carpetas donde se puede añadir
"páginas" de la lógica.
Haga doble clic sobre la pagina que seleccione para desplegar su ventana
correspondiente de edición.
6
1.3. Edición de una página: Lógica de Contactos
La primera vez que abre una página, que está vacía. Agregue su primer línea
de lógica haciendo clic derecho en cualquier lugar de la página y
eligiendo Insert a bottom> Lader Logic.
Puede insertar cualquier número de líneas. (Nota: Las líneas son a veces
llamadas Grupos de instrucciones). Puede insertar nuevas líneas en cualquier
lugar de la página, y usted puede reordenar líneas seleccionando uno,
haciendo clic derecho y seleccionando Move Selected Group Up/Move Selected
Group Down , o seleccionando una línea y usando la función de arrastrar y
soltar para moverlo hacia arriba o hacia abajo. El orden de las líneas es
importante porque se ejecutan en este orden en el Runtime.
Para añadir lógica a las líneas establecidas, necesitaremos arrastrar y soltar los
bloques de instrucción que aparecen en la parte derecha de la pantalla
dejándolos sobre la línea. Si no se ve la ventana de bloques de instrucciones
debe ir a View-> Instructions y seleccionar la opción. Arrastrando y soltando
en su lugar adecuado ira montando línea a línea su "Esquema de Contactos".
8
1.4. Comunicación "en línea" con el Runtime
Asumiendo que tiene una solución cargada (véase más arriba), activar el modo
"Online" con el Runtime es relativamente simple. Busque el
elemento Runtime en el Explorador de soluciones. Haga clic derecho sobre él
y seleccione Connect en el menú contextual.
Si esta es la primera vez que haya descargado algo sobre Runtime, SoapBox
Snap detectará que el Runtime está vacío. Se le preguntará si desea descargar
la aplicación. Decir que sí. Si el Runtime ya tiene una aplicación cargada, se le
preguntará si desea "upload (subir)" o "download (bajar)". En este caso,
seleccione "download".
9
Una vez que esté conectado con el Runtime y se esté ejecutándola aplicación,
si abre una página de diagrama de contactos ahora verá la lógica se ejecuta en
tiempo real. Usted puede hacer algunos cambios, como el nombre y la
descripción de las instrucciones, pero la mayoría de las ediciones requerirán
que desconecte.
10
1.5. Elementos de la Librería de bloques de Instrucción
disponibles.
Para la confección de una aplicación disponemos de los bloques siguientes:
Para incluir en cada bloque hay unos parámetros que se pueden editar simplemente
haciendo doblemente clic sobre el bloque. Algún bloque no tiene parámetros.
Vemos en la figura que al hacer click sobre el contacto aparece marcado para editar y
pulsado en esa ventana se despliega una ventana de configuración de valores de la que
seleccionamos lo que corresponda.
Bobina.
11
1.6. Tutorial de SoapBox Snap controlando Arduino
Antes de poder utilizar SoapBox Snap para programar Arduino con una
aplicación de "Lenguaje de Contactos" se necesita:
12
1. En el menú Herramientas>Placa, asegúrese de que tiene la placa
Arduino correcta seleccionada (para que coincida con el hardware
físico).
13
3. Opcionalmente, si usted tiene el Nano o Mega, puede editar el archivo
BoardSelect.h y comentar la línea (//) "UNO #define" y elimine el
comentario (//), ya sea el "NANO #define" o línea "MEGA
#define". (Dos marcas de barra es un comentario: //) Esto le permitirá
utilizar todas las 8 entradas analógicas en el Nano, en lugar de sólo los
primeros 6 que están disponibles en el Uno, o usar todas las Entradas
Analogicas disponible y todas las E/S digital en la tarjeta Arduino
Mega. Si usted decide hacer esto, usted tendrá que marcar el archivo
BoardSelect.h como lectura/escritura (en lugar de sólo lectura). Tiene
que hacer esto en su sistema de archivos de Windows, no en el software
de Arduino.
14
4. Asegúrese de que haya importado la libreria Timer1. Ir al menú
seleccionar Programa> Include library-> Add .ZIP Library ... y busque
el archivo de librería TimerOne-r11.zip que descargó en la sección de
pre-requisitos arriba. (Esta operacion colocara la librería en una carpeta
dentro C:\Users\....\Documents\Arduino\libraries llaamda TimerOne-
r11)
15
5. Ahora descargue el Firmware en Arduino
16
7. Ademas: pruebe el comando "device-config". Esto vuelve a leer una
lista de la configuración de E/S. Los Pines de E/S digitales de Arduino
se pueden configurar como entradas, salidas, o salidas (PWM). Por
defecto todos los pines digitales se configuran como entradas, pero se
puede cambiar un pin a una salida. Por ejemplo, si desea que el pin 8
pase a ser una salida, envíe el comando: "config-output 8". Si quieres
pin 9 para ser un análogo (PWM), envíe el comando: "config-pwm 9"
En cualquier momento, puede cambiar al estado inicial por defecto con
el comando "config-reset". Tenga en cuenta que esto sólo para fines
informativos en este momento. Tendra que hacer esto a través de
SoapBox Snap más tarde, como se verá, o todos los cambios de
configuración será eliminado de la primera vez que descarga aplicación
para el dispositivo.
18
3. En el cuadro de texto Address, escriba el puerto COM de comunicacion
con la tarjeta Arduino (por ejemplo, "COM3" sin las comillas)
20
2. Haga clic en "Runtime" en el Solution Explorer a la izquierda, y haga
clic en Connect en el menú contextual
21
6. Se le advertirá de que no se puede hacer esta edición mientras está
conectado. Responda "sí" cuando se le pregunta si desea
desconectarse. Ahora, bajo la configuración de dispositivos, verá un
nuevo elemento llamado E/S locales.
22
Ahora observa los iconos de "bombilla" junto a los pines de entrada. Si sus
pines de entrada están implicados, los indicadores de encendido/apagado se
activarna siguieno el estado de los pines de Arduino. También puede intentar
usar un puente para conectar un pin de entrada a los pines 5 V o GND para
hacer que vaya o desactivar respectivamente
También puede forzar las salidas dentro o fuera de aquí. Haga clic derecho
sobre el icono "pin7" (si se ha configurado como una salida) y elija Fuerza En
el menú contextual. El icono de la bombilla al lado pin7 se iluminará, y
aparecerá un icono de forzado (que se parece a un rayo pequeño).
Usted se dará cuenta de que si expande Discrete Outputs pines de salida, hay
un elemento debajo que dice "False" de forma predeterminada. Aquí es donde
se conecta esta salida a su lógica. Por defecto, la salida es impulsado por una
señal "False" no modificable, por lo menos que lo fuerzas, la salida estará
apagado. Usted puede cambiar esto a una constante "True" (siempre
encendido, a menos forzado desactivado), o se puede conectar directamente a
un pin de entrada, o una señal (como una bobina) en su lógica. Para cambiar la
conexión, haga doble clic en donde dice "Falso", y esto se abrirá un cuadro de
diálogo Signal Chooser (selector de señal). La primera opción es un valor
codificado (introduce True o False), o puede utilizar la opción inferior y
seleccione una bobina de su lógica (PIN6 en la figura), o una de las señales de
entrada.
23
Una nota sobre las "Señales": en los PLCs tradicionales con frecuencia se
habla de bits, etiquetas, direcciones o ubicaciones de memoria. Si bien esto es
cierto en un nivel muy bajo en el Runtime, SoapBox Snap crea
implícitamente estas cosas cuando sea necesario y usted no tiene que
preocuparse por ellos. Al colocar una bobina en una linea de programación,
asigna implícitamente un poco de memoria y asigna automáticamente la
"señal", el nombre que le dan a la bobina. Eso significa que usted puede
pensar en la bobina, la señal, y la ubicación de memoria que almacena el
estado de esa variable como todo uno y el mismo. Es sólo "una bobina". Al
colocar un contacto en una línea, utilice el Selector de señal (o simplemente
escriba el nombre de la señal utilizando el cuadro de texto de autocompletar)
para seleccionar una bobina u otra señal booleana para hacer referencia en ese
contacto. Del mismo modo, cuando se utiliza una instrucción de flanco
ascendente, no es necesario asignar una ubicación de memoria especial para
guardar el estado, ya que esto se hace para usted. Contadores y cronómetros
funcionan de la misma forma, excepto que implícitamente definen más de una
señal de cada uno, tales como señales booleanas "Done" y "valor actual"
señales numéricas. Uno de los beneficios de la asignación de la memoria
implícita es que evita que el "error de principiante" de utilizar la misma
ubicación de memoria en dos instrucciones de bobina diferentes. Lo más
importante es que significa que usted puede centrarse en escribir la lógica de
escalera en lugar de gestionar la memoria y las etiquetas.
24
Un solo renglón vacío se habrá creado por defecto. Las instrucciones
disponibles aparecen en una lista visual a la derecha. Usted puede arrastrar y
soltar estas instrucciones en el renglón. Nuevos peldaños se pueden agregar
haciendo clic derecho en el editor de escalera y con el menú contextual.
Todas las instrucciones excepto "Find Text (Buscar texto)" trabajará con el
Runtime de Arduino (no tiene ningún uso para las instrucciones de Cuerda en
este momento). Tenga en cuenta que cada línea se llama un "grupo" o "grupo
de instrucciones" .
26