Il mio team ha deciso di utilizzare un PLC per controllare un processo industriale che richiede un IO semplice e in tempo reale su dispositivi esterni con elaborazione minima. Tuttavia, ci aspettiamo che le uscite esatte necessarie variano tra le serie (in effetti, una determinata serie verrà raramente ripetuta) e l'operatore non avrà alcuna esperienza di programmazione PLC / software.
Anche se non posso rivelare il prodotto reale, la migliore analogia sarebbe che stiamo progettando un frullatore industriale, con PLC che controlla precisamente l'apertura e la chiusura di diverse valvole in tempo reale. L'operatore utilizzerà il nostro software per progettare una sequenza personalizzata di aggiunte di reagenti diversi e l'accensione / spegnimento di macchinari pesanti pertinenti (ad es. Un miscelatore industriale).
Ecco la sfida: il nostro approccio attuale è quello di scrivere il nostro compilatore che traduca le istruzioni fornite dall'operatore (aprire la valvola A per 10 ms, aprire la valvola B per 20 ms) in logica ladder e codice macchina PLC. Scaricheremo quindi direttamente il nostro programma autocompilato sul PLC tramite seriale. Tutto ciò dovrebbe essere automatizzato in modo tale che l'operatore debba fare clic su un pulsante solo dopo aver elaborato la sequenza di passaggi.
Tuttavia, nonostante la mia ricerca, non ho trovato un singolo fornitore di PLC che entrambi 1) abbia un compilatore con API o pubblichi abbastanza informazioni sul loro codice macchina PLC per consentire di scrivere un compilatore, 2) supporta il download diretto di programmi sul PLC senza l'uso del software di programmazione del fornitore (programmatore CX, Atmel studio, ecc.).
Sono portato a credere che potremmo avere un approccio sbagliato, o almeno non sapere quale prodotto cercare. L'I / O è abbastanza semplice da non giustificare la costruzione della nostra scheda, ma la funzionalità che stiamo cercando, vale a dire l'interazione del PLC con un software per PC di alto livello, non sembra essere disponibile.
Idealmente, vorremmo scaricare l'intero programma sul PLC contemporaneamente e non inviare istruzioni una alla volta. L'esecuzione di tutte le istruzioni sul PLC (o qualunque dispositivo utilizziamo) deve essere in tempo reale.
Esistono PLC disponibili in commercio che supportano la compilazione e il download di codice macchina, in modo tale che l'intero processo possa essere automatizzato da un programma più ampio? Esiste un altro modo per scaricare un programma in tempo reale su un PLC scritto da software PC scritto in un linguaggio di alto livello?