Skip to content

Releases: xingd5478-ctrl/simulink-control-tutorial

v2.0.0 — 30 课完整课程体系

Choose a tag to compare

@xingd5478-ctrl xingd5478-ctrl released this 18 Jul 11:49

Changelog

All notable changes to this project are documented here.

[1.3.0] - 2026-07-18

Added

  • 4 new tutorials: t22 (Root Locus), t23 (MRAC), t24 (Fuzzy), t25 (Simscape)
  • Simulink models for t15-t21 (7 previously analysis-only scripts now have .slx files)
  • check_setup.m — environment checker for beginners
  • FAQ section in README (中文/English)
  • Beginner-friendly quickstart guide with step-by-step instructions

Changed

  • Total tutorials: 21 → 25 (all 25 now have corresponding .slx models)
  • Restructured course into 5 progressive Phases (was 3)
    • Phase 1: Simulink Basics → Phase 2: Classical Control → Phase 3: Modern Control
    • Phase 4: Advanced Control → Phase 5: Applications & Deployment
  • Reorganized run_all_tutorials.m and t00_main_guide.m to follow learning path
  • Updated README (中文/English) with new Phase tables, learning path diagram, and FAQ

Fixed

  • t23: Completed MIT adaptive law wiring (was marked TODO)
  • t13: Wired Sum_FF feedforward path
  • t12: Removed unused SumK_Luenberger block
  • t24: Fixed Fuzzy Logic Toolbox fallback when toolbox not installed
  • t25: Updated Simscape block paths for R2025a compatibility
  • t21/t17/t24: Fixed dual-controller Plant block conflicts
  • All save_system paths now use absolute paths (t22-t25)

[1.2.0] - 2026-07-18

Added

  • Star History chart in README (中文/English)
  • GitHub Actions CI workflow: syntax check, structure validation, monthly schedule
  • CI passing badge in README

Changed

  • Updated all simulation images and models from latest run

[1.1.0] - 2026-07-17

Added

  • 6 advanced control tutorials: t16 (frequency domain), t17 (lead-lag), t18 (system ID), t19 (H∞ robust), t20 (MPC), t21 (sliding mode)
  • GitHub community health files: issue templates (bug, feature, tutorial request), PR template
  • CODE_OF_CONDUCT.md and SECURITY.md
  • FUNDING.yml

Changed

  • Total tutorials: 15 → 21
  • README overhaul: added table of contents, quick start, prerequisites, collapsible sections, improved badges
  • README_EN.md synced with latest structure
  • Updated CONTRIBUTING.md with detailed guidelines

Fixed

  • t19 LQR state feedback closed-loop formula (line 138): replaced incorrect feedback() with proper A-BK formulation
  • t19 fig3 layout: changed from 1×2 to clean 2×1, removed empty axes

[1.0.0] - 2026-07-17

Added

  • 15 Simulink tutorials covering fundamentals, control theory, and mechatronic systems
  • 14 .slx Simulink model files
  • run_all_tutorials.m — one-click batch runner
  • Simulation result figures in docs/images/
  • English README (README_EN.md)
  • Contributing guidelines (CONTRIBUTING.md)
  • MIT License

Tutorials

  • Phase 1 (t01-t08): Signal basics, math blocks, first/second-order systems, PID control, sources/sinks, subsystems, masking
  • Phase 2 (t09-t12): State-space models, LQR optimal control, Luenberger observer, Kalman filter
  • Phase 3 (t13-t15): DC motor modeling, PMSM FOC vector control, embedded C code generation

v1.1.1 — Star-Project Overhaul

Choose a tag to compare

@xingd5478-ctrl xingd5478-ctrl released this 17 Jul 11:28
  • t21 — Sliding Mode Control: nonlinear robust control, chattering suppression

📖 Documentation Overhaul

  • Bilingual README (中文 + English) with table of contents, quick start,
    prerequisites
  • Collapsible tutorial details with learning path diagram
  • Updated Simulink学习笔记.html covering all 21 lessons
  • Academic CITATION.cff for easy referencing

🏗️ Project Structure

  • .slx models moved to models/ — root directory now clean
  • utils/getSimData.m — consolidated 6 duplicate functions into one shared utility
  • GitHub community files: issue templates (bug/feature/tutorial request), PR template
  • CODE_OF_CONDUCT.md, SECURITY.md, FUNDING.yml, dependabot.yml

🐛 Bug Fixes

  • t19: LQR state feedback now uses correct A-BK closed-loop formula
  • t19: H∞ visualization overhaul — envelope shading, DC-gain compensation,
    constraint violation highlighting
  • t04: Fix broken Unicode escape (\x03B6 → ζ) causing garbled output
  • t20: Guard quadprog/optimoptions with exist() for users without
    Optimization Toolbox
  • t19, t20, t21: Wrap toolbox-dependent functions (ureal, hinfsyn, rms) in
    try-catch for graceful fallback
  • t21, t13: Guard find() against empty results in convergence checks
  • t16: Store and display gain/phase margin results (were previously discarded)
  • t15: Fix incorrect "series complete" message (t16-t21 exist)
  • t08: Correct outdated comment referencing Simscape
  • t18: Remove dead no-op code
  • t20: Remove dead A_pow computation loop

📦 Changelog (from v1.0.0)

Area Changes
Tutorials 15 → 21 lessons
Documentation Bilingual README, HTML notes, CITATION.cff
Community Issue/PR templates, CoC, Security, FUNDING
Structure models/, utils/, clean root directory
Bug fixes 13 issues resolved across t04-t21