1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI BÁO CÁO chủ đề ứng dụng của arduino uno

35 24 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 35
Dung lượng 1,11 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các chân trên Arduino của bạn là những nơi mà bạn kết nối dây để xây dựng một mạch có lẽ trong kết hợp với breadboard và một số dây.Nó thường có các ‘chân cắm’ cho phép bạn cắm dây ngayv

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HỒ CHÍ MINH

 -  - 

BÀI BÁO CÁO

Chủ đề: ứng dụng của arduino uno

Môn: Thực tập điện

Trang 2

A.STRUCTURE OF ARDUINO UNO.

A.CẤU TẠO ARDUINO UNO.

What's on the board?

There are many varieties of Arduino boards that can be used for different purposes Some boards look a bit different , but most Arduinos have the majority of these components in common:

Có gì trên bo mạch?

Có nhiều loại bo arduino, chúng có thể được sử dụng cho nhữngmục đích khác nhau Một số bo có thể hơi khác, nhưng hầu hết cácarduino đều có chung các cầu tạo:

 Power (USB / Barrel Jack)

 Nguồn(USB/Giắc thùng)

Every Arduino board needs a way to be connected to a power source The Arduino UNO can be powered from a USB cable coming from your computer or a wall power supply (like this) that is terminated in a barrel jack In the picture above the USB connection

is labeled (1) and the barrel jack is labeled (2).

Mỗi bo arduino đều cần có một cách kết nối nguồn nănglượng.Arduino Uno được cung cấp năng lượng từ cáp USB kết nốivới máy tính hoặc nguồn điện tường (giống thế) thông qua giắcthùng Ở hình bên trên kết nối USB kí hiệu (1), và giắc cắm kí hiệu(2)

Trang 3

The USB connection is also how you will load code onto your Arduino board More on how to program with Arduino can be found

in Installing and Programming Arduino tutorial.

Kết nối USB cũng là cách bạn đưa code vào mạch arduino củabạn Hơn nữa bạn có thể tìm hiểu thêm về cách lập trình với Arduinotrong hướng dẫn Cài đặt và lập trình Arduino

NOTE: Do NOT use a power supply greater than 20 Volts as you will overpower (and thereby destroy) your Arduino The recommended voltage for most Arduino models is between 6 and 12 Volts.

Lưu ý: Không sử dụng nguồn cung cấp quá 20V như thế bạn sẽlàm vượt quá công suất của arduino(và bị hỏng) Điện áp được yêucầu cho hầu hết các loại arduino là từ 6V đến 12 V

 Pins (5V, 3.3V, GND, Analog, Digital, PWM, AREF)

The pins on your Arduino are the places where you connect wires to construct a circuit (probably in conjuction with

a breadboard and some wire) They usually have black plastic

‘headers’ that allow you to just plug a wire right into the board The Arduino has several different kinds of pins, each of which is labeled

on the board and used for different functions.

Các chân trên Arduino của bạn là những nơi mà bạn kết nối dây

để xây dựng một mạch (có lẽ trong kết hợp với breadboard và một

số dây).Nó thường có các ‘chân cắm’ cho phép bạn cắm dây ngayvào bo Có nhiều loại chân cắm khác nhau, mỗi loại đều được ghitên trên bo và được sử dụng cho các chức năng khác nhau

GND (3): Short for ‘Ground’ There are several GND pins on the Arduino, any of which can be used to ground your circuit.

GND (3): Viết tắt của ‘Ground’ Có một số chân GND trênArduino, bất kỳ trong số đó có thể được sử dụng để nối đất chomạch của bạn

Trang 4

5V (4) & 3.3V (5): As you might guess, the 5V pin supplies 5 volts of power, and the 3.3V pin supplies 3.3 volts of power Most of the simple components used with the Arduino run happily off of 5 or 3.3 volts.

5V (4) & 3.3V (5): Như bạn có thể đoán, chân 5V cung cấp điện

áp 5 vôn , và chân 3.3V cung cấp điện áp 3,3vôn Hầu hết các thànhphần đơn giản được sử dụng với Arduino đều sử dụng điện áp 5hoặc 3,3 volt

Analog (6): The area of pins under the ‘Analog In’ label (A0 through A5 on the UNO) are Analog In pins These pins can read the signal from an analog sensor (like a temperature sensor) and convert it into a digital value that we can read.

Chân tín hiệu tương tự (6): các chân dưới nhãn 'Analog In' (A0đến A5 trên UNO) là các chân Analog In Các chân này có thể đọctín hiệu từ một cảm biến tương tự (như cảm biến nhiệt độ) vàchuyển đổi nó thành một giá trị số mà chúng ta có thể đọc

Digital (7): Across from the analog pins are the digital pins (0 through 13 on the UNO) These pins can be used for both digital input (like telling if a button is pushed) and digital output (like powering an LED).

Kỹ thuật số (7): Qua các chân tương tự là các chân kỹ thuật số (0đến 13 trên UNO) Các chân này có thể được sử dụng cho cả đầuvào kỹ thuật số (như tín hiệu khi một nút được nhấn) và đầu ra kỹthuật số (như cấp nguồn cho đèn LED)

PWM (8): You may have noticed the tilde (~) next to some of the digital pins (3, 5, 6, 9, 10, and 11 on the UNO) These pins act as normal digital pins, but can also be used for something called Pulse- Width Modulation (PWM) We have a tutorial on PWM, but for now, think of these pins as being able to simulate analog output (like fading an LED in and out).

PWM (8): Bạn có thể nhận thấy dấu ngã (~) bên cạnh một sốchân số (3, 5, 6, 9, 10 và 11 trên UNO) Các chân này hoạt động nhưcác chân số thông thường, nhưng cũng có thể được sử dụng cho

Trang 5

một cái gọi là Pulse-Width Modulation (PWM) Chúng tôi có mộthướng dẫn về PWM, nhưng bây giờ, hãy nghĩ đến những chân này

có thể mô phỏng đầu ra tương tự (như điều khiển độ sáng của mộtLED)

AREF (9): Stands for Analog Reference Most of the time you can leave this pin alone It is sometimes used to set an external reference voltage (between 0 and 5 Volts) as the upper limit for the analog input pins.

AREF (9): Là viết tắt của Analog Reference Hầu hết thời gianbạn không cần sử dụng chân này Nó đôi khi được sử dụng để thiếtlập một điện áp tham chiếu bên ngoài (giữa 0 và 5 Volts) như giớihạn trên cho các chân đầu vào tương tự

 Reset Button

Just like the original Nintendo, the Arduino has a reset button (10) Pushing it will temporarily connect the reset pin to ground and restart any code that is loaded on the Arduino This can

be very useful if your code doesn’t repeat, but you want to test it multiple times Unlike the original Nintendo however, blowing on the Arduino doesn’t usually fix any problems.

Trang 6

lần Tuy nhiên không giống như bản gốc Nintendo ,việc nhấn resettrên arduino thường không khắc phục bất kì vấn đề nào.

 Power LED Indicator

Just beneath and to the right of the word “UNO” on your circuit board, there’s a tiny LED next to the word ‘ON’ (11) This LED should light up whenever you plug your Arduino into a power source.

If this light doesn’t turn on, there’s a good chance something is wrong Time to re-check your circuit!

Đèn LED chỉ báo nguồn

Ngay bên dưới và bên phải của từ “UNO” trên bảng mạch củabạn, có một đèn LED nhỏ bên cạnh từ ‘ON’ (11) Đèn LED này sẽsáng lên bất cứ khi nào bạn cắm Arduino vào nguồn điện Nếu ánhsáng này không bật, thì có khả năng xảy ra lỗi Đã đến lúc kiểm tralại mạch của bạn!

TX RX LEDs

TX is short for transmit, RX is short for receive These markings appear quite a bit in electronics to indicate the pins responsible for serial communication In our case, there are two places on the Arduino UNO where TX and RX appear – once by digital pins 0 and

1, and a second time next to the TX and RX indicator LEDs (12) These LEDs will give us some nice visual indications whenever our

TX là viết tắt của transmit (truyền) , RX là viết tắt củareceive(nhận) Những dấu hiệu này xuất hiện khá nhiều trong cácthiết bị điện tử để chỉ ra các chân chịu trách nhiệm về giao tiếp nốitiếp.Trên bo arduino uno, có hai vị trí nơi TX và RX xuất hiện - một là

ở các chân số 0 và 1, và hai là bên cạnh đèn LED chỉ báo TX và RX(12) Những đèn LED này sẽ cung cấp cho chúng ta một số chỉ dẫntrực quan đẹp mắt bất cứ khi nào

Trang 7

B.STEPPER MOTOR CONTROL USING

MATLAB AND ARDUINODUINO

B.ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC BẰNG MATLAB VÀ ARDUINO

Stepper motors is a brushless DC motor that rotates in discretesteps, and are the best choice for many precision motion controlapplications Also, stepper motors are good for positioning, speedcontrol and applications which require high torque at low speed.Stepper Motor Control sử dụng MATLAB và Arduino

Động cơ bước là một động cơ không chổi than DC quay trong cácbước rời rạc, và là sự lựa chọn tốt nhất cho nhiều ứng dụng điềukhiển chuyển động chính xác Ngoài ra, động cơ bước là tốt cho vịtrí, kiểm soát tốc độ và các ứng dụng đòi hỏi mô-men xoắn cao ở tốc

độ thấp

Trang 8

In previous tutorials of MATLAB, we have explained that how touse MATLAB to control DC motor, Servo motor and Homeappliances Today we will learn how to control Stepper Motor

using MATALB and Arduino If you are new to MATLAB then it is

recommend to get started with simple LED blink program withMATLAB

Trong các hướng dẫn trước đây của MATLAB, chúng tôi đã giảithích rằng làm thế nào để sử dụng MATLAB để điều khiển động cơ

DC, động cơ Servo và thiết bị gia dụng Hôm nay chúng ta sẽ họccách điều khiển động cơ Stepper bằng MATALB và Arduino Nếubạn chưa quen với MATLAB thì bạn nên bắt đầu với chương trìnhflash LED đơn giản với MATLAB

Modes of operation in Stepper Motor

Before you start coding for stepper motor you should understandthe working or rotating concept of a stepper motor Since the stator ofthe stepper mode is built of different pairs of coils, each coil pair can

be excited in many different methods, this enabling the modes to bedriven in many different modes The following are the broadclassifications

Các chế độ hoạt động trong Động cơ bước

Trước khi bạn bắt đầu mã hóa cho động cơ bước, bạn nên hiểukhái niệm làm việc hoặc xoay của động cơ bước Vì stator của chế

độ stepper được chế tạo từ các cặp cuộn khác nhau, mỗi cặp cuộn

có thể được kích thích bằng nhiều phương pháp khác nhau, điềunày cho phép các chế độ được điều khiển ở nhiều chế độ khácnhau Sau đây là các phân

Full Step Mode

In full step excitation mode we can achieve a full 360° rotation withminimum number of turns (steps) But this leads to less inertia andalso the rotation will not be smooth There are further two

classifications in Full Step Excitation, they are one Phase-on wave

stepping and two phase-on mode.

Chế độ toàn bộ bước

Trong chế độ kích thích toàn bộ bước, chúng ta có thể đạt đượcvòng quay 360 ° đầy đủ với số lần rẽ tối thiểu (các bước) Nhưngđiều này dẫn đến quán tính ít hơn và cũng xoay vòng sẽ không được

Trang 9

mịn màng Ngoài ra còn có hai phân loại trong kích thích đầy đủbước, chúng là một bước sóng bước pha và hai chế độ pha

1 One phase-on stepping or Wave Stepping: In this mode only

one terminal (phase) of the motor will be energised at any given time.This has less number of steps and hence can achieve a full 360°rotation Since the number of steps is less the current consumed bythis method is also very low The following table shows the wavestepping sequence for a 4 phase stepper motor

1 Một pha bước hoặc bước sóng: Trong chế độ này chỉ có mộtđầu cuối (pha) của động cơ sẽ được cấp nguồn tại bất kỳ thời điểmnào Điều này có số bước ít hơn và do đó có thể đạt được vòngquay 360 ° đầy đủ Vì số lượng các bước ít hơn mức tiêu thụ hiện tạicủa phương pháp này cũng rất thấp Bảng sau đây cho thấy trình tựbước sóng cho động cơ bước 4 pha

Step

Phase

1 (Blue)

Phase

2 (Pink)

Phase 3(Yellow)

Phase 4 (Orange)

2 Two Phase-on stepping: As the name states in this method

two phases will be one It has the same number of steps as Wave

Trang 10

stepping, but since two coils are energised at a time it can providebetter torque and speed compared to the previous method Althoughone down side is that this method also consumes more power.

2 Hai giai đoạn bước: Như tên tiểu bang trong phương pháp nàyhai giai đoạn sẽ là một Nó có cùng số bước như Wave bước, nhưng

kể từ khi hai cuộn dây được cung cấp năng lượng tại một thời điểm

nó có thể cung cấp mô-men xoắn tốt hơn và tốc độ so với phươngpháp trước đó Mặc dù một bên xuống là phương pháp này cũng tiêuthụ nhiều năng lượng hơn

Step Phase 1 (Blue)

Phase

2 (Pink)

Phase 3(Yellow)

Phase 4 (Orange)

Half Step Mode

The Half Step mode is the combination of one phase-on and phase on modes This combination will help us to get over the abovementioned disadvantage of the both the modes

two-As you might have guessed it since we are combining both the

methods we will have to perform 8-steps in this method to get a

complete rotation The switching sequence for a 4-phase steppermotor shown below

Chế độ nửa bước

Chế độ Half Step là sự kết hợp của một pha và hai pha trên cácchế độ Sự kết hợp này sẽ giúp chúng tôi vượt qua những bất lợiđược đề cập ở trên của cả hai chế độ

Như bạn có thể đoán được vì chúng ta đang kết hợp cả haiphương thức, chúng ta sẽ phải thực hiện 8 bước trong phương thứcnày để có được một vòng quay hoàn chỉnh Trình tự chuyển đổi chođộng cơ bước 4 pha hiển thị bên dưới

Trang 11

Hence, it is your choice to program your stepper motor in anymode, but I prefer Two Phase-on stepping Full Step Mode Becausethis method deliver faster speed then the one phase method and incompare to half mode the coding part is less due to less number ofsteps in two-phase method

Do đó, nó là sự lựa chọn của bạn để chương trình động cơ bướccủa bạn trong bất kỳ chế độ nào, nhưng tôi thích Hai Giai đoạn-onBước Chế độ đầy đủ Bởi vì phương pháp này cung cấp tốc độnhanh hơn thì phương pháp một pha và so sánh với một nửa chế độphần mã hóa ít hơn do số bước ít hơn trong phương pháp hai pha

Step Phase 1

(Blue)

Phase 2 (Pink)

Phase 3 (Yellow)

Phase 4 (Orange)

Trang 12

Creating MATLAB Graphical User Interface for controlling StepperMotor

Tạo giao diện người dùng đồ họa MATLAB để điều khiển động cơbước

Then we have to build GUI (Graphical User Interface) to controlStepper motor To launch the GUI, type the below command in

the command window

guide

Sau đó, chúng ta phải xây dựng GUI (Giao diện người dùng đồ họa)

để điều khiển động cơ Stepper Để khởi chạy GUI, gõ lệnh dưới đâyvào cửa sổ lệnh

Now choose two toggle buttons for rotating the stepper Motor

Clockwise and Anti-clockwise, as shown below,

Trang 13

Bây giờ chọn hai nút chuyển đổi để xoay động cơ bước theochiều kim đồng hồ và ngược chiều kim đồng hồ, như hình dưới đây,

To resize or to change the shape of the button, just click on it andyou will be able to drag the corners of the button By double-clicking

on toggle button you can change the color, string and tag of thatparticular button We have customized two buttons as shown inbelow picture

Để thay đổi kích thước hoặc thay đổi hình dạng của nút, chỉ cầnnhấp vào nút đó và bạn sẽ có thể kéo các góc của nút Bằng cáchnhấp đúp vào nút chuyển đổi, bạn có thể thay đổi màu, chuỗi và thẻcủa nút cụ thể đó Chúng tôi đã tùy chỉnh hai nút như trong hình dướiđây

You can customize the buttons as per your choice Now when you

save this, a code is generated in the Editor windowof MATLAB To

Trang 14

code your Arduino for performing any task related to your project,you always have to edit this generated code So below we haveedited the MATLAB code You can learn more about Commandwindow, editor window etc in Getting started with MATLAB tutorial.

MATLAB Code for controlling Stepper Motor with Arduino

Complete MATLAB code, for controlling Stepper motor, is given

at the end of this project Further we are including the GUI file (.fig)and code file(.m) here for download (right click on link then select'Save link as ')), using which you can customize the buttons as peryour requirement Below are some tweaks we did for rotating theStepper Motor clockwise and anticlockwise using two toggle buttons.Copy and paste the below code on line no 74 to make sure that theArduino is talking with MATLAB every time you run the m-file

Bạn có thể tùy chỉnh các nút theo sự lựa chọn của bạn Bây giờkhi bạn lưu này, một mã được tạo ra trong cửa sổ soạn thảo củaMATLAB Để mã Arduino của bạn để thực hiện bất kỳ tác vụ nào liênquan đến dự án của bạn, bạn luôn phải chỉnh sửa mã được tạo này

Vì vậy, dưới đây chúng tôi đã chỉnh sửa mã MATLAB Bạn có thể tìmhiểu thêm về cửa sổ Lệnh, cửa sổ trình soạn thảo, v.v trong Bắt đầuvới hướng dẫn MATLAB

Mã MATLAB để điều khiển động cơ bước với Arduino

Toàn bộ mã MATLAB, để điều khiển động cơ Stepper, được đưa

ra ở cuối dự án này Hơn nữa chúng tôi bao gồm tệp GUI (.fig) vàtệp mã (.m) tại đây để tải xuống (nhấp chuột phải vào liên kết rồichọn 'Lưu liên kết dưới dạng ')), bằng cách sử dụng bạn có thể tùychỉnh các nút theo yêu cầu của bạn Dưới đây là một số chỉnh sửachúng tôi đã làm để xoay động cơ bước theo chiều kim đồng hồ vàngược chiều kim đồng hồ bằng cách sử dụng hai nút chuyển đổi.Sao chép và dán mã bên dưới vào dòng số 74 để đảm bảo rằngArduino đang nói chuyện với MATLAB mỗi lần bạn chạy tập tin m.clear all;

global a;

a = arduino();

Trang 15

When you scroll down, you will see that there are two functionscreated for both the Buttons in the GUI Now write the code in boththe functions according to the task you want to perform on click.

In Clockwise button’s function, copy and paste the below code just

before the end of the function to rotate the motor in clockwisedirection For continuously rotating the stepper motor in clockwise

direction, we are using while loop to repeat the two phase-on

stepping full mode steps for clockwise direction

Khi bạn cuộn xuống, bạn sẽ thấy rằng có hai hàm được tạo cho

cả hai nút trong GUI Bây giờ hãy viết mã trong cả hai hàm theonhiệm vụ bạn muốn thực hiện khi bấm

Trong chức năng của nút Chiều kim đồng hồ, hãy sao chép vàdán mã bên dưới ngay trước khi kết thúc chức năng xoay động cơtheo chiều kim đồng hồ Để liên tục xoay động cơ bước theo chiềukim đồng hồ, chúng tôi đang sử dụng trong khi vòng lặp để lặp lại haipha trên bước bước chế độ đầy đủ cho chiều kim đồng hồ

Trang 16

writeDigitalPin(a, 'D10', 1);writeDigitalPin(a, 'D11', 1);pause(0.0002);

writeDigitalPin(a, 'D8', 0);writeDigitalPin(a, 'D9', 1);writeDigitalPin(a, 'D10', 1);writeDigitalPin(a, 'D11', 0);pause(0.0002);

writeDigitalPin(a, 'D8', 1);writeDigitalPin(a, 'D9', 1);writeDigitalPin(a, 'D10', 0);writeDigitalPin(a, 'D11', 0);pause(0.0002);

end

Trang 17

Now in Anti-clockwise button’s function, paste the below code atthe of the function to rotate the motor in anti-clockwise direction Forcontinuously rotating the stepper motor in anti-clockwise direction,

we are using while loop to repeat the two phase-on stepping fullmode steps for anti-clockwise direction

Bây giờ trong chức năng của nút Anti-chiều kim đồng hồ, dán mãdưới đây vào bên trong của hàm để xoay động cơ theo hướngngược chiều kim đồng hồ Để liên tục xoay động cơ bước theohướng ngược chiều kim đồng hồ, chúng tôi đang sử dụng vòng lặptrong khi lặp lại hai pha trên bước bước chế độ đầy đủ theo hướngngược chiều kim đồng hồ

while get(hObject,'Value')

global a;

writeDigitalPin(a, 'D8', 1);

Ngày đăng: 06/10/2021, 15:06

HÌNH ẢNH LIÊN QUAN

Để thay đổi kích thước hoặc thay đổi hình dạng của nút, chỉ cần nhấp vào nút đó và bạn sẽ có thể kéo các góc của nút - BÀI BÁO CÁO chủ đề ứng dụng của arduino uno
thay đổi kích thước hoặc thay đổi hình dạng của nút, chỉ cần nhấp vào nút đó và bạn sẽ có thể kéo các góc của nút (Trang 13)
 Kết nối diode qua rơle chính xác như trong hình. - BÀI BÁO CÁO chủ đề ứng dụng của arduino uno
t nối diode qua rơle chính xác như trong hình (Trang 28)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w