Skip to content

mravathar/PID

 
 

Repository files navigation

ПИД-регулятор на Arduino

Пропорционально-интегрально-дифференциальный (ПИД) регулятор оборотов для коллекторного двигателя, питание от сети переменного напряжения 230В, 50Гц.

Возможности:

  • Ручной ПИД-регулятор без индикации: обороты выставляются потенциометром;
  • ПИД-регулятор с возможностью выбора режима ручной/программный, есть светодиодная индикация;
  • ПИД-регулятор с возможностью выбора режима ручной/программный, есть светодиодная индикация, плюс отображение данных на LCD1602: режим, выставленные и текущие обороты, ступень, оставшееся время.

Последовательность действий

  1. Предварительно

    1. разобраться с подключением к сетевому напряжению коллекторного дигателя;
    2. установить Arduino IDE. Информация по установке здесь и здесь;
    3. содержимое папки bibl (FastDefFunc обязательно) скопировать в папку libraries. Последняя находится в папке с программой Arduino. Подробнее здесь.
  2. Собрать проект согласно схеме соединений;

  3. Определить количество полюсов на магнитном кольце ротора, скетч Polus.ino;

  4. Загрузить скетч PID_motor.ino. При неконтролируемом поведении двигателя варьировать коэффициенты ПИД-регулирования;

  5. При желании залить PID_motor_prog_LED.ino или PID_motor_prog_LED_LCD1602I2С.ino.

Примечание:

В папке bibl находятся используемые в проекте библиотеки, из которых все кроме FastDefFunc можно найти у Алекса Гайвера. FastDefFunc содержит несколько "убыстрённых" стандартных функций: можно их и не использовать (что нежелательно), тогда нужно в имеющихся в коде "какая_то_стандартная_функцияFast" убрать суффикс "Fast".

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 97.9%
  • Processing 1.1%
  • C 1.0%