WP Manifestindependent plugin directory
manifest / utilities / controlsystemtoolbox

Control Systems Toolbox

Toolbox scolastico per sistemi automatici

★ 0stars
2.7latest · 7mo ago

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/dadebertolino/controlsystemtoolbox/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Plugin WordPress per l'insegnamento dei Controlli Automatici e dell'Automazione.

9 simulatori interattivi, zero dipendenze, un unico shortcode per modulo. Installa, attiva, insegna.


Moduli

# Modulo Shortcode Categoria
1 Simulatore PID [pid_simulator] Analisi Temporale
2 Diagrammi di Bode [bode_diagram] Analisi in Frequenza
3 Diagramma di Nyquist [nyquist_diagram] Analisi in Frequenza
4 Luogo delle Radici [root_locus] Stabilità
5 Mappa Poli-Zeri [polezero_map] Interattivo
6 Confronto Risposte [response_compare] Analisi Temporale
7 Spazio di Stato ↔ FdT [statespace] Modellazione
8 Algebra dei Blocchi [block_algebra] Modellazione
9 Discretizzazione [discretize] Modellazione

Ogni modulo è indipendente e attivabile singolarmente dalla pagina di configurazione.


Installazione

  1. Scarica il file control-systems-toolbox.zip dall'ultima release
  2. In WordPress: Plugin → Aggiungi nuovo → Carica plugin → seleziona il .zip
  3. Attiva il plugin
  4. Vai in Impostazioni → CS Toolbox per abilitare i moduli e creare le pagine

Oppure clona il repo direttamente in wp-content/plugins/:

cd wp-content/plugins/
git clone https://github.com/TUO-USER/control-systems-toolbox.git

Utilizzo

Inserisci lo shortcode in qualsiasi pagina o post WordPress:

[pid_simulator]

Oppure usa il pulsante "Crea tutte le pagine" nella pagina di configurazione per generare automaticamente una pagina per ogni modulo abilitato.


Architettura

control-systems-toolbox/
├── control-systems-toolbox.php    # Loader, admin page, shortcode registration
├── css/
│   └── cst-styles.css             # Tema dark (~900 righe, variabili CSS)
├── js/
│   ├── cst-math.js                # Math engine condiviso (34 KB, 1028 righe)
│   ├── cst-pid-simulator.js
│   ├── cst-bode-diagram.js
│   ├── cst-nyquist-diagram.js
│   ├── cst-root-locus.js
│   ├── cst-polezero-map.js
│   ├── cst-response-compare.js
│   ├── cst-statespace.js
│   ├── cst-block-algebra.js
│   └── cst-discretize.js
└── includes/
    ├── shared-styles.php           # Enqueue CSS
    ├── shared-math.php             # Enqueue math engine
    ├── pid-simulator.php
    ├── bode-diagram.php
    ├── nyquist-diagram.php
    ├── root-locus.php
    ├── polezero-map.php
    ├── response-compare.php
    ├── statespace.php
    ├── block-algebra.php
    └── discretize.php

Math Engine (cst-math.js)

Il cuore del toolbox. 34 KB di JavaScript puro, nessuna libreria esterna.

Aritmetica polinomiale: moltiplicazione, addizione, divisione, valutazione complessa, conversione in stringa.

Ricerca radici: Durand-Kerner per radici complesse di polinomi arbitrari.

Simulazione temporale: Runge-Kutta 4° ordine, equazioni alle differenze per sistemi discreti.

Analisi in frequenza: risposta in frequenza, margini di guadagno e fase, conteggio avvolgimenti Nyquist.

Spazio di stato: conversione TF ↔ SS (CCF, OCF, Modale), Fadeev-LeVerrier, polinomio caratteristico.

Discretizzazione: ZOH esatto (esponenziale matriciale Padé(6,6) con scale-and-square), Tustin (bilineare), Backward Euler.

Algebra dei blocchi: serie, parallelo, retroazione positiva/negativa.


Pagina di configurazione

In Impostazioni → CS Toolbox trovi:

  • Toggle on/off per ogni modulo (i moduli disabilitati non caricano JS)
  • Creazione automatica pagine con shortcode pre-inserito
  • Gestione pagine: visualizza, modifica, cestina
  • Link rapido dalla pagina Plugin di WordPress

Requisiti

Requisito Versione minima
WordPress 6.0
PHP 8.1
MySQL / MariaDB 5.7 / 10.3
Browser Chrome, Firefox, Edge, Safari (ultimi 2 anni)

Nessuna dipendenza server-side aggiuntiva. L'unica risorsa esterna è Chart.js (caricato da CDN).


Per i docenti

Il toolbox è pensato per accompagnare un corso di Controlli Automatici / Automazione a livello ITIS o universitario. Ogni simulatore è progettato per:

  • Feedback immediato: lo studente modifica un parametro e vede subito l'effetto
  • Rigore matematico: le implementazioni sono validate con 56+ test automatici
  • Esportabilità: grafici PNG e dati CSV per le relazioni di laboratorio

Materiali didattici disponibili

  • Presentazione PID (teoria e pratica, 17 slide)
  • Esercitazione laboratorio Ziegler-Nichols
  • Verifica parametrica ZN (30 varianti, una per studente)
  • Laboratorio Luogo delle Radici (teoria + simulatore)

Changelog

v2.7 (Febbraio 2026)

  • Aggiunto modulo Algebra dei Blocchi (serie, parallelo, retroazione)
  • Aggiunto modulo Discretizzazione (ZOH, Tustin, Backward Euler)
  • Pagina di configurazione admin con creazione automatica pagine
  • Math engine esteso: esponenziale matriciale, operazioni matriciali

v2.5

  • Aggiunto Confronto Risposte (fino a 6 configurazioni sovrapposte)
  • Aggiunto Convertitore Spazio di Stato (CCF, OCF, Modale)

v2.3

  • Aggiunto Luogo delle Radici con slider K interattivo
  • Aggiunto Mappa Poli-Zeri con drag & drop

v2.1

  • Aggiunto Diagramma di Nyquist con conteggio avvolgimenti
  • Bug fix: forma canonica controllabile, cancellazione poli PID

v2.0

  • Aggiunto Diagrammi di Bode con margini automatici
  • Math engine condiviso estratto in cst-math.js

v1.0

  • Primo rilascio: Simulatore PID con risposta temporale

Licenza

GPL v2 or later.


Autore

Prof. Davide Bertolino Controlli Automatici e Automazione — ITIS www.davidebertolino.it

Releases

1 release.

Tag
Published
2.7 latest
Mar 25, 2026 7mo ago

These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.