Como el primero de los ejemplos en Step 7 que haremos a partir de ahora, voy a resolver un problema que se ha planteado en el portal http://www.infoplc.net/foro.
El enunciado dice más o menos lo siguiente:
Los valores de ‘a’ y ‘b’, catetos de triángulos rectángulos, se obtienen cada 100 ms. Las últimas 4 muestras deben almacenarse en un DB. Para cada uno de estos 4 triángulos se pide calcular:
- Su hipotenusa ‘c’.
- El ángulo del cateto α en grados.
- Su área.
Todos estos valores deberán almacenarse en el mismo DB. A su vez, cuando se indique a través de la marca M0.0, deberá calcularse la suma de las áreas de los últimos 4 triángulos y deberá almacenarse también en el mismo DB.
Os dejo con el video de resolución del problema.
Vídeo de ejemplos en Step 7
Como habéis podido ver en el vídeo, hemos tratado los siguientes aspectos:
- Creación de DB de instancia a través de variables estáticas de un FB
- Creación de FCs con variables de entrada y salida para reutilizar la función
- Diferentes llamadas a los FC desde otro bloque (en este caso desde un FB).
- Uso de un OB cíclico para ejecutar una tarea a tiempo fijo.
- Algunas de las difentes instrucciones aritméticas y geométricas que nos ofrece Step 7.
En próximas entradas repasaremos los conceptos esenciales referidos a los DB para asentar firmemente qué son y cómo se pueden usar, pero he querido pasar digamos a la acción e ir introduciendo los conceptos aunque estén aún sin publicar de forma teórica porque creo que como mejor vas a aprender es practicando.
Si tienes alguna duda, o algo puede incluso que no esté bien en la resolución del problema, o crees que se puede resolver de otra forma o quieres compartir la forma en la que has resuelto el problema, comenta comenta y comenta.
Referencia:
Comentarios (16)