В этом эксперименте мы познакомимся с транзистором MOSFET и с помощью него будем управлять мощной нагрузкой – электродвигателем.
Необходимые компоненты:
• контроллер Arduino UNO R3;
• плата для прототипирования;
• транзистор MOSFET IRF540;
• диод 1N4007;
• двигатель DC;
• блок питания 5 В;
• провода папа-папа.
Выводы Arduino, сконфигурированные как OUTPUT, находятся в низкоимпедансном состоянии и могут отдавать 40 мА в нагрузку и не в состоянии обеспечить питание мощной нагрузки и большого напряжения. Одним из способов управления мощной нагрузкой является использование полевых MOSFET-транзисторов. MOSFET-транзистор – это ключ для управления большими токами при помощи небольшого напряжения (в отличие от биполярных транзисторов, управляемых током). В нашем эксперименте мы будем управлять скоростью вращения мотора изменением напряжения, подаваемого на MOSFET. Управлять напряжением, подаваемым на MOSFET, будем с помощью ШИМ (широтно-импульсной модуляции). В эксперименте 5 мы уже рассматривали использование ШИМ для получения изменяющегося аналогового значения посредством цифровых сигналов. Для регулирования скорости двигателя будем использовать потенциометр. Схема подключения элементов для данного эксперимента показана на рис. 11.1.
![Arduino проект www.arduino-kit.ru](http://mbitech.ru/userfiles/image/11-1.jpg)
Необходимые компоненты:
• контроллер Arduino UNO R3;
• плата для прототипирования;
• транзистор MOSFET IRF540;
• диод 1N4007;
• двигатель DC;
• блок питания 5 В;
• провода папа-папа.
Выводы Arduino, сконфигурированные как OUTPUT, находятся в низкоимпедансном состоянии и могут отдавать 40 мА в нагрузку и не в состоянии обеспечить питание мощной нагрузки и большого напряжения. Одним из способов управления мощной нагрузкой является использование полевых MOSFET-транзисторов. MOSFET-транзистор – это ключ для управления большими токами при помощи небольшого напряжения (в отличие от биполярных транзисторов, управляемых током). В нашем эксперименте мы будем управлять скоростью вращения мотора изменением напряжения, подаваемого на MOSFET. Управлять напряжением, подаваемым на MOSFET, будем с помощью ШИМ (широтно-импульсной модуляции). В эксперименте 5 мы уже рассматривали использование ШИМ для получения изменяющегося аналогового значения посредством цифровых сигналов. Для регулирования скорости двигателя будем использовать потенциометр. Схема подключения элементов для данного эксперимента показана на рис. 11.1.
![Arduino проект www.arduino-kit.ru](http://mbitech.ru/userfiles/image/11-1.jpg)
Рис. 11.1. Схема подключения мотора к Arduino
Скетч данного эксперимента показан в листинге 11.1. В цикле loop() считываем аналоговое значение потенциометра и, масштабируя функцией map(), выдаем ШИМ-сигнал на MOSFET, к которому подключен мотор.
Порядок подключения:
1. Подключаем элементы к плате Arduino по схеме на рис. 11.1.
2. Загружаем в плату Arduino скетч из листинга 11.1.
3. Крутим потенциометр – изменяем скорость вращения мотора.
Листинги программ скачать
const int MOTOR=9; // Выход для подключения MOSFET
const int POT=0; // Аналоговый вход A0 для подключения потенциометра
int valpot = 0; // переменная для хранения значения потенциометра
int speedMotor = 0; // переменная для хранения скорости двигателя
void setup()
{
//
pinMode(MOTOR,OUTPUT);
}
void loop()
{
valpot = analogRead(POT); // чтение данных потенциометра
// масштабируем значение к интервалу 0-255
speedMotor=map(valpot,0,1023,0,255);
// устанавливаем новое значение ШИМ
analogWrite(MOTOR,speedMotor);
delay(1000); // пауза
}
Порядок подключения:
1. Подключаем элементы к плате Arduino по схеме на рис. 11.1.
2. Загружаем в плату Arduino скетч из листинга 11.1.
3. Крутим потенциометр – изменяем скорость вращения мотора.
Листинги программ скачать