Abstract and keywords
Abstract (English):
This paper discusses a program for automating wood brushing using a PID controller to control brush speed and brush pressure force. The PID controller, based on three parameters: proportional component coefficient (Kp), integral component coefficient (Ki) and differential component coefficient (Kd), is used to react to the error between the set and current values of the parameters.

Keywords:
brushing automation, PID controller, software implementation, mathematical models, brushing process control, system modeling and analysis
Text
Publication text (PDF): Read Download

В современной промышленности автоматизация производственных процессов играет ключевую роль в повышении эффективности и качества производства. Одним из важных этапов производственного цикла является браширование древесины, которое не только придает ей эстетический вид, но и улучшает её визуальные характеристики. В данной статье рассматривается разработка и реализация программного обеспечения для автоматизации процесса браширования древесины с использованием ПИД-регулятора. Анализируются принципы работы и ключевые параметры данного регулятора, а также представляются математические модели, описывающие динамику процесса браширования. Дополнительно рассматривается настройка контроллера для управления скоростью вращения щеток и силой их нажима, а также представлены результаты моделирования и анализа системы управления. Полученные результаты могут быть полезны для промышленных предприятий, занимающихся производством мебели и других изделий из древесины, а также для специалистов в области автоматизации производственных процессов.

Программа на C++ для автоматизации браширования с ПИД-регулированием:

 

C++

#include <iostream>

#include <wiringPi.h>

 

using namespace std;

 

// Параметры ПИД-регулятора

const float Kp = 1.0;

const float Ki = 0.01;

const float Kd = 0.05;

 

// Настройка GPIO

const int speedPin = 23; // PWM (ШИМ) для скорости вращения щеток

const int forcePin = 24; // PWM (ШИМ) для силы нажима щеток

const int pressurePin = 25; // Аналоговый вход для датчика давления

 

 

// Функция ПИД-регулирования

float pidControl(float target, float actual) {

  float error = target - actual;

  static float previousError = 0.0;

  float derivative = (error - previousError) / 0.1;

  static float integral = 0.0;

  integral += error * 0.1;

  float output = Kp * error + Ki * integral + Kd * derivative;

  previousError = error;

  return output;

}

 

int main() {

  // Инициализация GPIO

  wiringPiSetup();

  pinMode(speedPin, PWM_OUTPUT);

  pinMode(forcePin, PWM_OUTPUT);

  pinMode(pressurePin, INPUT);

 

  // Запуск цикла браширования

  while (true) {

    // Считывание данных с датчика давления

    float pressure = analogRead(pressurePin) / 1024.0;

 

    // Вычисление скорости вращения щеток

    float speed = pidControl(500.0, pressure);

 

    // Вычисление силы нажима щеток

    float force = pidControl(1000.0, pressure);

 

    // Установка PWM для скорости вращения щеток

    pwmWrite(speedPin, (int)speed);

 

    // Установка PWM для силы нажима щеток

    pwmWrite(forcePin, (int)force);

 

    // Задержка

    delay(100);

  }

 

  return 0;

}

Программа использует ПИД-регулятор для управления скоростью вращения щеток и силой нажима. ПИД-регулятор имеет три параметра: Kp – коэффициент пропорциональной составляющей; Ki – коэффициент интегральной составляющей; Kd – коэффициент дифференциальной составляющей. Эти параметры определяют, как ПИД-регулятор будет реагировать на ошибку между заданным и текущим значением.

Настройка контроллера GPIO. Программа использует три канала контроллера для управления щетками и датчиком давления: speedPin: номер канала для скорости вращения щеток; forcePin – номер для силы нажима щеток; pressurePin: номер для датчика давления.

Функция pidControl принимает два аргумента: target – заданное значение; actual – текущее значение. Она вычисляет ошибку между заданным и текущим значением, а затем использует ПИД-регулятор для вычисления выходного значения.

Программа работает в бесконечном цикле while (true). Внутри цикла программа выполняет следующие действия:

  • Считывает данные с датчика давления (pressure = analogRead(pressurePin) / 1024.0;);
  • Вычисляет скорость вращения щеток (speed = pidControl(500.0, pressure);)
  • Вычисляет силу нажима щеток (force = pidControl(1000.0, pressure);)
  • Устанавливает значение для скорости вращения щеток (pwmWrite(speedPin, (int)speed);)
  • Устанавливает значение для силы нажима щеток (pwmWrite(forcePin, (int)force);)
  • Делает задержку (delay(100);)

Рассмотрим разработанные математические модели объектов автоматизации браширования для реализации автоматического регулирования.

Динамика скорости вращения щеток может быть представлена уравнением:

где J – момент инерции щеток; ω – угловая скорость вращения щеток; B – коэффициент вязкого трения; K – коэффициент усиления двигателя; UV – управляющее напряжение, подаваемое на двигатель.

 

Динамика силы нажима представляется уравнением:

,

где  Fn – сила нажима; Kp – коэффициент пропорциональности привода.

Скорость вращения брашировальных щеток определяется уравнением

где Kp, Ki, Kd – параметры ПИД-регулятора;  ωref – заданная скорость вращения.

Сила нажима:

,

где Fnref – заданная сила нажима.

Датчик давления описывается уравнением:

,

где P – измеренное давление; Ks – коэффициент чувствительности датчика

Объект браширования:

,

где Ft – сила трения; μ – коэффициент трения.

Следует отметить, что в задачи управления входит:

  1. Поддержание заданной скорости вращения щеток.
  2. Обеспечение точного и быстрого позиционирования щеток.
  3. Поддержание заданной силы нажима щеток.
  4. Обеспечение оптимального контакта щеток с поверхностью.

Предположим, что скорость вращения браширующих щеток зависит от управляющего сигнала, который подается на электропривод. Пусть w(t) – скорость вращения в определенный момент времени t. Тогда можем использовать пропорционально-интегрально-дифференциальный (ПИД) регулятор для управления этой скоростью.

Математически это можно выразить следующим образом:

,

где w(t) – желаемая скорость вращения,  – ошибка скорости вращения, Kp, Ki, Kd – коэффициенты ПИД-регулятора, которые необходимо подобрать экспериментально.

Предположим, что сила нажима браширующих щеток зависит от управляющего сигнала, который подается на пневматическое устройство. Пусть F(t) – сила нажима в определенный момент времени t. Тогда также можно использовать ПИД-регулятор для управления этой силой.

Математически это можно выразить аналогичным образом:

,

где желаемая сила нажима;  – ошибка силы нажима; Kp, Ki, Kd – коэффициенты ПИД-регулятора.

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

Реализация системы регулирования скорости вращения браширующих щеток в MatLab Simulink приведена на рис. 1.

Рисунок 1 – Модель регулирования скорости вращения браширующих щеток в MatLab/Simulink

Динамическая характеристика скорости вращения браширующих щеток  (рис. 2) характеризуется небольшим перерегулированием и малым временем переходного процесса (2,5 с).

Рисунок 2 – Динамическая характеристика скорости вращения браширующих щеток

 

АСР скорости вращения браширующих щеток является устойчивой с хорошими запасами устойчивости по амплитуде и фазе (рис. 3).

Рисунок 3 – Устойчивость АСР скорости вращения браширующих щеток

 

Автоматизация браширования является перспективным направлением развития деревообрабатывающей промышленности. Автоматические станки позволяют повысить производительность, улучшить качество обработки и снизить трудоемкость браширования.

References

1. Gribanov, A. A. Ispol'zovanie tehnologii cifrovogo dvoynika tehnologicheskogo ob'ekta upravleniya v obrazovanii / A. A. Gribanov // Avtomatizaciya. Sovremennye tehnologii. – 2022. – T. 76. – № 2. – S. 89-93. – DOIhttps://doi.org/10.36652/0869-4931-2022-76-2-89-93.

2. Gribanov, A. A. Nastroyka avtomaticheskih regulyatorov metodom identifikacii tehnologicheskih ob'ektov upravleniya / A. A. Gribanov, Yu. A. Pyatkova // Mehanizaciya i avtomatizaciya tehnologicheskih processov v sel'skohozyaystvennom proizvodstve : materialy nacional'noy nauchno-prakticheskoy konferencii, Voronezh, 25 sentyabrya 2020 goda / Redakcionnaya kollegiya: V.I. Orobinskiy, V.G. Kozlov. – Voronezh: Voronezhskiy gosudarstvennyy agrarnyy universitet im. Imperatora Petra I, 2020. – S. 155-160.

3. Gribanov, A. A. Identifikaciya parametrov promyshlennyh ob'ektov upravleniya / A. A. Gribanov, A. S. Vasilenko // Integraciya i razvitie nauchno-tehnicheskogo i obrazovatel'nogo sotrudnichestva - vzglyad v buduschee : Sbornik statey II Mezhdunarodnoy nauchno-tehnicheskoy konferencii. V 3-h tomah, Minsk, 11–12 dekabrya 2019 goda. – Minsk: Belorusskiy gosudarstvennyy tehnologicheskiy universitet, 2020. – S. 45-48.

Login or Create
* Forgot password?