Tải bản đầy đủ (.pdf) (56 trang)

Điều khiển các thiết bị điện trong nhà từ xa qua bluetooth trên thiết bị android

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.23 MB, 56 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

BỘ GIAO THÔNG VẬN TẢI

TRƢỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM

NGUYỄN NGỌC HUY

ĐỒ ÁNTỐT NGHIỆP ĐẠI HỌC
ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN TRONG NHÀ TỪ XA QUA
BLUETOOTH TRÊN THIẾT BI ̣ ANDROID
NGÀNH: ĐIỆN TỬ –ĐIỆN TỬ TÀU BIỂN

;

MÃ SỐ: D52027

CHUYÊN NGÀNH: ĐIỆN TỬ - VIỄN THÔNG

Người hướng dẫn: ThS. VŨ VĂN RỰC

HẢI PHÒNG – 2015

i


LỜI CẢM ƠN
Để có được một đề tài như mình mong muốn, có thể hoàn thành được đề tài
đó trong thơi gian quy định và đạt được một kết quả đề ra. Việc đó không chỉ là
sự nỗ lực của bản thân mà còn có sự giúp đỡ , sự chỉ bảo nhiệt tình của các thầy
cô cùng những tham gia đó góp ý kiến của bạn bè. Em xin chân thành cảm ơn :


Sự chỉ dẫn và góp ý chân thành của thầy ... Cám ơn thầy đã nhiệt tình cung cấp
tài liệu, thông tin hướng dẫn và hỗ trợ kiểm tra, khắc phục các thông tin chưa
chuẩn xác. Các bạn sinh viên trong lớp đã giúp đỡ rất nhiều về mặt phương tiện,
sách vở, ý kiến . . .Do chư có nhiều kinh nghiêm và kiến thức chuyên môn còn
kém nên trong quá trình làm đề tài sẽ có những sai sót nhất định. Rất mong nhận
được sự phê bình, góp ý, của quý thầy cô và các bạn sinh viên.

ii


LỜI CAM ĐOAN
Em xin cam đoan :
1. Nhưng nội dung của đề tài trên là do em thực hiện dưới sự hướng dẫn
trực tiếp của thầy Vũ Văn Rực.
2. Mọi tài liệu tham khảo đề là có các trang web.
3. Mọi sự sao chép không hợp lệ, vi phạm quy chế đào tạo hay giam tra em
xin tự chụi hoàn toàn trách nhiệm.
Sinh viện
Nguyễn Ngọc Huy

iii


DANH MỤC BẢNG

Bảng 2.1: mô tả chức năng các chân của module:............................................... 8
Bảng 2.2: một số lệnh AT cho module Bluetooth HC-05 ................................. 10
Bảng 2.3. Một số thông số của Arduino UNO .................................................. 15
Bảng 2.4. Một số câu lệnh thường gặp ............................................................. 20


iv


DANH MỤC HÌNH
Hình 2.1: Modul Bluetooth HC-05 ..................................................................... 6
Hình 2.2: Sơ đồ chân modul Bluetooth HC-05 ................................................... 7
Hình 2.3:. Các chân vào ra của Arduino Uno ................................................... 15
Hình 2.4: File chạy phần mềm .......................................................................... 17
Hình 2.5:Bố n lớp chin
́ h của hê ̣ điề u hành Android . .......................................... 22
Hình 2.6: Activity Satck ................................................................................... 24
Hình 2.7: Chu kỳ sống của Activity.................................................................. 25
Hình 2.8: Giao diê ̣n My Projects. ..................................................................... 28
Hình 2.9: Giao diện bên trong Projects. ............................................................ 29
Hình 2.10: Các thành phần của thanh công cụ .................................................. 29
Hình 3.1: Sơ đồ tổng quát hệ thống .................................................................. 32
Hình 3.2: Giao diê ̣n phầ n mề m điề u khiể n ....................................................... 34
Hình 3.3: Giao diê ̣n Hercules Setup Untility Serial . ......................................... 37
Hình 3.4: Kit ma ̣ch Arduino . ............................................................................ 38
Hình 3.5: Giao diê ̣n Disigner của đồ án . ........................................................... 44

v


MỤC LỤC
LỜI CẢM ƠN .................................................................................................... i
LỜI CAM ĐOAN ............................................................................................ iii
DANH MỤC HÌNH ........................................................................................... i
LỜI NÓI ĐẦU .................................................................................................. 1
CHƢƠNG 1 : GIỚI THIỆU ............................................................................ 2

1.1.

LÝ DO CHỌN ĐỀ TÀI..................................................................... 2

1.2.

MỤC ĐÍCH CỦA ĐỀ TÀI................................................................ 2

1.3.

ĐỐI TƢỢNG VÀ PH ẠM VI NGHIÊN CỨU ................................. 2

1.4.

HƢỚNG NGHIÊN CỨU VÀ PHÁT TRIỂN................................... 2

1.5.

TỔNG QUAN VỀ ĐỒ ÁN ................................................................ 3

CHƢƠNG 2 :TÌM HIỂU VỀ HỆ ĐIỀU HÀNH VÀ GIAO TIẾP NGOẠI VI
2.1.

CÔNG NGHỆ KHÔNG DÂY BLUETOOTH ................................ 4

2.1.1.

Khái niệm .................................................................................... 4

2.1.2.


Đặc điểm của công nghệ Bluetooth ............................................ 4

2.1.3.

Hoạt động Bluetooth HC 05. ...................................................... 5

2.1.4.

Vấn đề bảo mật trong công nghệ Bluetooth. ............................. 5

2.1.5.

Module Bluetooth HC-05 ............................................................ 6

2.2.

KIT MẠCH ARDUINO .................................................................. 11

2.2.1.

Giới thiệu về Arduino. .............................................................. 11

2.2.2.

Phần cứng của Arduino UNO R3 ............................................. 12

2.2.3.Phần mềm lập trình cho Arduino ......................................................... 15
2.3.


HỆ ĐIỀU HÀNH ANDROID ......................................................... 22

2.3.1.

Giới thiệu về android ................................................................ 22

1


2.3.2.

Chu kỳ ứng dụng trên andorid. ............................................... 23

CHƢƠNG 3 : THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN ............................... 32
3.1.

TỔNG QUÁT VỀ HỆ THỐNG. ..................................................... 32

3.2.

CÁC KHỐI TRONG HỆ THỐNG ................................................ 33

3.2.1.

Khố i phát tín hiêụ . .................................................................... 33

3.2.2.

Khố i thu tín hiêụ . ...................................................................... 36


3.2.3.

Khố i xỷ lý tín hiêụ . .................................................................... 38

3.2.4.

Khố i thƣ̣c hiêṇ lênh
̣ ................................................................... 39

3.3.

CHƢƠNG TRÌNH CHO ARDUINO VÀ ANDROID ................... 42

3.3.1.

Chƣơng trình code Arduino ..................................................... 42

3.3.2.

Chƣơng trình cho Android ....................................................... 44

CHƢƠNG 4: KẾT QUẢ VÀ HƢƠNG PHÁT TRIỂN CỦA ĐỀ TÀI ......... 46
4.1.

ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN ĐỒ ÁN .............................. 46

4.2.

KẾT QUẢ ĐẠT ĐƢỢC .................................................................. 46


4.3.

NHƢỢC ĐIỂM ............................................................................... 46

TÀI LIỆU THAM KHẢO.............................................................................. 47

2


LỜI NÓI ĐẦU
Ngày nay việc ứng dụng cho các hệ thống điề u khiể n tự đô ̣ng ngày càng
trở nên phổ biến, từ những ứ ng dụng đơn giản như điều khiển một chốt đền giao
thông định thời, đếm sản phẩm trong dây chuyền sản xuất, điều khiển động cơ
điện một chiều, xoay chiều, … đến những ứng dụng phức tạp như điều khiển
robot, hệ thống kiểm soát, các hệ thống tự động, các thiết bị máy móc tự
động,..Với mong muốn giới thiệu những ứng dụng cơ bản của hệ thống điề u
khiể n tự đô ̣ng trong đời sống hiện đại và để mọi người biết đến ứng dụng cũng
như tầm quan trọng của các hệ thố ng điề u khiể n tự đô ̣ng . Em đã tìm hiểu và thực
hiện đề tài “ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN TRONG NHÀ TỪ XA QUA
BLUETOOTH TRÊN THIẾT BI ̣ ANDROID”.

1


CHƢƠNG 1 :GIỚI THIỆU
1.1. LÝ DO CHỌN ĐỀ TÀI
Trong những năm qua, khoa học máy tính và xử lý thông tin có những
bước tiến vượt bậc và ngày càng phát triển mạnh. Đặc biệt sự ra đời và phát
triển nhanh chóng của kỹ thuật số đã làm cho ngành điện tử trở nên phong phú
và đa dạng hơn. Đã góp phần rất lớn trong việc đưa kỹ thuật hiện đại vào mọi

lĩnh vực của hoạt động sản xuất, kinh tế và đời sống xã hội.Từ những hệ thống
máy tính lớn đến những hệ thống máy tính cá nhân, từ những việc điều khiển
các máy công nghiệp đến các thiết bị phục vụ đời sống hằng ngày của con
người. Công nghệ số thực sự là một bước tiến lớn cho công nghệ hiện nay.Với
mong muốn áp dụng công nghệ số vào thực tiễn. Vì vậy em đã chọn đề tài :
“ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN TRONG NHÀ

TỪ XA QUA

BLUETOOTH TRÊN THIẾT BI ̣ ANDROID”.
1.2. MỤC ĐÍCH CỦA ĐỀ TÀI
Mục đích nghiên cứu của đề tài này là nghiên cứu họ vi điều khiển họ 8 bít
AVR cụ thể là Atmega328 , phương pháp lập trình cho AVR bằng ngôn ngữ C
trên trình biên dịch Codevison AVR, lập trình ứng dụng android dùng SDK,
giao tiếp không dây Bluetooth…
1.3. ĐỐI TƢỢNG VÀ PH ẠM VI NGHIÊN CỨU
- Vi điều khiển sử dụng là AVR Atmega328, để nắm được cấu trúc phần
cứng, lập trình phần mềm và ứng dụng vào thực tế.
- Phần mềm điều khiển trên android.
- Modul bluetooth HC-05
1.4. HƢỚNG NGHIÊN CỨU VÀ PHÁT TRIỂN
- Hiện nay trong thời kỳ kinh tế đang phát triển, đời sống được nâng cao.
Mọi người gần như ai cũng được sở hữu một chiếc điện thoại thông minh. Mà
điện thoại luôn ở bên cạnh chúng ta. Vì vậy e có ý tưởng dùng chính chiếc điện

2


thoại đó để có thể điều khiển các thiết bị điện trong nhà khi ta ngồi ở bất kì vị trí
nào trong ngôi nhà.

- Nắm bắt được cấu trúc phần cứng, sơ đồ khối, bố trí chân, tập lệnh điều
khiển cho AVR ATMega328.
- Tìm hiểu về lập trình phần mềm android giao tiếp Bluetooth.
- Kết quả cuối cùng là điều khiển tắt mở bóng đèn và điều khiển tốc độ
động cơ cũng như điều khiển độ sáng của đèn một các ổn định. Bằng phần mềm
Android trên điện thoại.
1.5. TỔNG QUAN VỀ ĐỒ ÁN
Nội dung của đồ án được chia làm 4 phần chính
- Tìm hiểu về hệ điều hành và giao tiếp ngoại vi.
- Tìm hiểu về kit Arduino.
- Tìm hiểu về các lập trình Ardroid.
- Thiết kế bộ điều khiển android và trên Kit arduino thông qua module
Bluetooth HC05.
- Kết quả và hướng phát triển

3


CHƢƠNG 2 :TÌM HIỂU VỀ HỆ ĐIỀU HÀNH VÀ GIAO TIẾP NGOẠI VI

2.1.

CÔNG NGHỆ KHÔNG DÂY BLUETOOTH

2.1.1. Khái niệm
Bluetooth là một công nghệ cho phép truyền thông giữa các thiết bị với
nhau mà không cần cáp và dây dẫn. Nó là một chuẩn điện tử, điều đó có nghĩa là
các hãng sản xuất muốn có đặc tính này trong sản phẩm thì họ phải tuân theo
các yêu cầu của chuẩn này đối cho sản phẩm của mình. Những chỉ tiêu kỹ thuật
này bảo đảm cho các thiết bị có thể nhận ra và tương tác với nhau khi sử dụng

công nghệ Bluetooth. Ngày nay phần lớn các nhà máy đều sản xuất các thiết bị
có sử dụng công nghệ Bluetooth. Các thiết bị này gồm có điện thoại di động,
máy tính và thiết bị hỗ trợ khác. Công nghệ Bluetooth là một công nghệ dựa trên
tần số vô tuyến và bất cứ một thiết bị nào có tích hợp bên trong công nghệ này
đều có thể truyền thông với các thiết bị khác với một khoảng cách nhất định về
cự ly để đảm bảo công suất cho việc phát và nhận sóng. Công nghệ này thường
được sử dụng để truyền thông giữa hai loại thiết bị khác nhau.
2.1.2. Đặc điểm của công nghệ Bluetooth
a. Ƣu điểm.
- Tiêu thụ năng lượng thấp, cho phép ứng dụng được nhiều loại thiết bị bao
gồm các thiết bị cầm tay và điện thoại di động.
- Giá thành ngày một giảm .
- Khoảng cách giao tiếp cho phép giữa hai thiết bị đầu cuối có thể lên đến
10m, khoảng cách giữa thiết bị đầu cuối có thể lên tới 100m.
- Bluetooth sử dụng băng tần 2.4GHz. Tốc độ truyền dữ liệu có thể đạt tới
mức tới đa 1Mbps mà các thiết bị không cần phải trực tiếp thấy nhau .
- Dễ dàng trong việc phát triển ứng dụng: Bluetooth kết nối một ứng dụng
này với một ứng dụng khác thông qua chuẩn Bluetooth profiles, do đó có thể
độc lập về phần cứng cững như hệ điều hành sử dụng. - Tính tương thích cao,
được nhiều nhà sản xuất phần cứng cũng như phần mềm hỗ trợ.
4


b. Khuyết điểm.
- Khoảng cách kết nối còn ngắn so với công nghệ mạng không dây khác.
- Tốc độ truyền không cao.
2.1.3. Hoạt động Bluetooth HC 05.
Bluetooth là thiế t bi ̣không dây cho phép các thiế t bi ̣điê ̣n và thiế t bi ̣điê ̣n
tử, có thể giao tiếp với nhau băng sóng


vô tuyế n trong pha ̣m vi ngắ n và

trong

băng tầ n từ 2,4 Ghz đế n 2,485Ghz. Bluetôth đươ ̣c thiế t kế để hoa ̣t đô ̣ng trên
79tầ n số đơ lẻ khác nhau . Sau khi đã kế t nố i , bluetooth sẽ tự tìm ra tầ n số tương
thích với nó , sau đó nó sẽ di chuyể n tới các thiế t bi ̣bluet ooth đó trong khoảng
cách nhất định để việc kết nối không bị gián đoạn
Về khoảng cách giữ a các thiế t bi ̣có Bluetooth thì còn phu ̣ thuô ̣c và công
suấ t . Gồ m ba loa ̣i : Loại thứ nhất công suất 100mW thì sẽ phủ sóng đươ ̣c trong
khoảng 100met. Loai thứ hai với công suấ t 2.5mW thì tâm phủ sóng chỉ khoảng
10met. Và loại cuối cùng 1mW chỉ có thế kế t nố i trong pha ̣m vi 5met.
2.1.4. Vấn đề bảo mật trong công nghệ Bluetooth.
a. Bảo mật .
Về tin
́ h bảo mâ ̣t thì bluetooth cũn g rấ t là quan tâm , vì nó cũng là một thiết
bị để truyền thông tin . Để có thể an toàn thì khi các thiế t bi ̣bluetooth kế t nố i với
nhau phải có mâ ̣t khẩ u riêng , mà chỉ có các thiết bị được trao đổi biết mật khẩu
này.
Tùy thuô ̣c vào cấ u mà công nghê ̣ Bluetooth
bảo mật ngắn hay là dài .
b. Các phƣơng pháp bảo vệ .
- Tắ t bluetooth khi không dù ng.
- Để chế đô ̣ bluetooth trong chế đô ̣ ẩ n .
- Sử dụng Bluetooth trong chế độ ẩn.

5

, mà có thể có có chuỗi ký tự



2.1.5. Module Bluetooth HC-05
a. Giới thiệu Module Bluetooth HC-05

Hình 2.1: Modul Bluetooth HC-05
Module Bluetooth HC-05 được thiết kế đễ sử dụng giao giao tiếp Bluetooth
qua Serial Port, truyền dữ liệu nối tiếp qua wireless.
Đặc điểm kỹ thuật:
- Chuẩn Bluetooth : V2.0+EDR - Điện áp hoạt động : 3,3VDC/ 30mA
- Chế độ hoạt động : Master , Slave, Loopback
- Kích thước 28mm x 15mm x 2.35mm
- Tần số: 2.4GHz ISM band
- Tốc độ: Asynchronous : 2.1 Mbs (Max)/160kbps Synchronous :
1Mbps/1Mbps - Bảo mật : Authentication and encryption - Giao tiếp : Bluetooth
serial port
- Baud Rate mặc định : 38400, databits : 8, Stopbit : 1, Parity : No. Hỗ trợ
tốc độ baud : 9600,19200,38400,57600,115200,230400,460800.
- Nhiệt độ làm việc : -20 ~ 75 độ C - Độ nhạy : -80dBm
- Công suất truyền : +4dBm
- Tự động kết nối với pincode mặc định “1234” or “1111”

6


- Tự động reconnect trong 30 phút nếu bị đứt kết nối Module có 2 chế độ
làm việc (có thể chọn chế độ làm việc bằng cahcs thay đổ i tr ạng thái chân KEY34:
- Tự động kết nối
- Đáp ứng theo lệnh: khi làm việc ở chế độ này, chúng ta có thể gửi các
lệnh AT để giao tiếp với module
Gaio tiếp với module bằng giao tiếp nối tiếp không đồng bộ qua hai đường

RX và TX Bằng cách thay đổ i tr ạng thái chân KEY chúng ta có thể cấu hình chế
độ hoạt động cho modue
- Để module làm việc ở chế độ tự động kết nối: KEY phải ở trạng thái
Floating ( trạng thái không kết nối )
- Để module làm việc ở chế độ đáp ứng theo lệnh : KEY=‟0‟, cấp nguồn
cho module, chuyển KEY = „1‟, lúc này có thể giao tiếp với modul bằng tập lệnh
AT
Ở chế độ SLAVE: chúng ta cần thiết lập kết nối từ smartphone, laptop, usb
bluetooth để dò tìm module và ghép nối với pincode mặc định ”1234”
Ở chế độ MASTER : modul sẽ tự động dò tìm thiết bị Bluetooth khác và
tiến hành ghép nối chủ động mà không cần thiết lập gì. Module tương thích với
các vi diều khiển 5V mà không cần chuyển đổ i m ức giao tiếp 5V về 3.3V như
nhiều loại module khác
b. Phần cứng Bluetooth HC 05
Sơ đồ chân :

Hình 2. 2: Sơ đồ chân modul Bluetooth HC-05

7


Bảng 2.0.1: mô tả chức năng các chân của module:
Tên chân

STT Chân

Loại chân

Mô tả chân


GND

13,21,22

VSS

Chân đất

3.3v VCC

12

Chân 3.3v

Chân nguồn

AIO0

9

2 hướng

Lập trình I/O

AIO1

10

2 hướng


Lập trình I/O
Lập trình I/O, điều

PIO0

23

2 hướng RX EN

khiển output cho
LNA nếu được
trang bị.
Lập trình I/O, điều

PIO1

24

2 hướng TX EN

khiển LA nếu
được trang bị.

PIO2

25

2 hướng

Lập trình I/O


PIO3

26

2 hướng

Lập trình I/O

PIO4

27

2 hướng

Lập trình I/O

PIO5

28

2 hướng

Lập trình I/O

PIO6

29

2 hướng


Lập trình I/O

PIO7

30

2 hướng

Lập trình I/O

PIO8

31

2 hướng

Lập trình I/O

PIO9

32

2 hướng

Lập trình I/O

PIO10

33


2 hướng

Lập trình I/O

PIO11

34

2 hướng

Lập trình I/O

ResetB_RST

11

Cmos input with weak

Reset nếu LOW

internal pull-up

UART

UART_CTS

3

Cmos input with weak

internal pull-down

8

UART xóa khi
gửi, hoạt động
LOW.


UART_RX

2

Cmos input with weak

Dữ liệu vào

internal pull-down

UART

Cmos output, tri-stable
UART_TX

1

with weak internal pull-

Dữ liệu ra UART


up.

SPI_MOSI

17

Cmos input with weak
internal pull-down.

Serial peripheral
interface data
input
Chip select for

SPI_CSB

16

Cmos input with weak

serial peripheral

internal pull-up.

interface, active
low.

SPI_CLK

SPI_MISO


19

18

Cmos input with weak

Serial peripheral

internal pull-down.

interface clock

Cmos input with weak
internal pull-down

USB-

15

2 hướng

USB+

20

2 hướng

NC


14

PCM CLK

5

2 hướng

PCM_OUT

6

Cmos output

PCM_IN

7

Cmos input

PCM_ SYNC

8

2 hướng

9

Serial peripheral
interface data

output

Synchronous
PCM data clock
Synchronous
PCM data output
Synchronous
PCM data input
Synchronous
PCM data strobe


c. Tập lệnh AT cho module Bluetooth HC-05
Bảng 2.2: một số lệnh AT cho module Bluetooth HC-05
Lệnh

Trả về

Tham số

Chức năng

AT

OK

None

Test


AT+RESET

OK

None

Reset

Version number

Kiểm tra phiên bản

AT+VERSION?

+VERSION: <Param>
OK

AT+ORGL

OK

None

Khôi phục trạng
thái mặc định

AT+ADDR?

+ADDR:<Param>OK


Bluetooth address

Địa chỉ bluetooth

AT+NAME=aram>

OK

Đặt tên cho
Module

1. +NAME:<Param >
AT+NAME?

OK---success 2. FAIL--failure

AT+RNAME?<
param 1>

AT+ROLE?
AT+PSWD
=
AT+PSWD?
AT+UART
=<Param>,
<Param2>,
<Param3>

AT+UART?


1. +NAME:<Param 2>
OK---success 2. FAIL--failure

Bluetooth device

Tên thiết bị (mặc

name

định HC05)

Tên thiết bị
Bluetooth

0---Slave role 1--+ROLE:<Param> OK Master role 2--Slaver-Loop role
OK

Pincode

+PSWD:<Param>

Pincode
Param1: Baud
rate Param2: stop

OK

bit Param: parity
bit


UART=<Param>,a m2>,<Param3> OK

10

Param1: Baud
rate Param2: stop
bit Param: parity
bit

Đồ trên Module
Truy vấn chức
năng modul Mặc
định :0
Đặt mã Pin Mặc
định:”1234”

Cấu hình cho cổng
UART

Truy vấn thông tin
cổng UART


2.2.

KIT MẠCH ARDUINO

2.2.1. Giới thiệu về Arduino.

ArduinolàmộtbomạchviđiềukhiểndomộtnhómgiáosưvàsinhviênÝthiếtkếvàđ
ưara

đầutiênvàonăm2005.MạchArduinođượcsử

vàđiềukhiểnnhiềuđốitượng

đểcảmnhận

dụng

khácnhau.Nócóthểthựchiệnnhiềunhiệmvụtừlấy

tínhiệutừcảmbiếnđếnđiềukhiểnđèn,
độngcơ,vànhiềuđốitượngkhác.Ngoàiramạchcòncókhảnăngliênkếtvớinhiềumodul
e

khácnhau

như

module

đọcthẻtừ,

ethernetshield,sim900A,

….đểtăngkhảứngdụngcủamạch.
Phầncứng
baogồmmộtboardmạchnguồnmởđượcthiếtkếtrênnềntảngvixửlýAVRAtmel8bit,h

oặcARM,Atmel32-bit,….HiệnphầncứngcủaArduinocótấtcả6phiênbản,Tuy nhiên
phiênbảnthườngđượcsửdụngnhiều
nhấtlàArduinoUnovàArduinoMega.ArduinoUno
rãitrênthếgiới,rấtnhiềuvídụtrênyoutubehoặccáctrang

đượcsửdụng

rấtrộng

hướng

dẫnvề

Arduinosửdụngmạchnày.Vìvậy
đốivớicácbạnmớihọcArduino,việcchọnArduinoUnosẽ

giúp

cácbạncó

thểtự

họcdễdàng.
Phần mềm đểlập trình cho mạch Arduino làphầnmềmIDE. Đâylà phầnmềm
mãnguồn

mở,




cóthểđượcdownload

từtrang

webcủaArduino:arduino.cc.Việchướng dẫndownloadvà sử dụngphần mềm
nàysẽđượcđềcập đến trongnhữngphần sau.

11


2.2.2. Phần cứng của Arduino UNO R3

2: Chân ICSP
atemega 16 U2
3:Giác cấp nguồn
cho mạch

1 Cáp
USB

4:Cổng USB
5:Nút Reset
1a:Giác cắm USB
đầu của Arduino

6:Chân ICSP của
Atemega 16U2
7:Chân xuất tín
hiệu ra


1b:Giác cắm USB
đầu của máy tính

8: IC Atemega
328
11:Chân cấp
nguồn cho cảm
biến

10:Chân lấy tín
hiệu Analog

9:Chân ICSP của
Atemega 328

1. Cáp USB
Đâylàdâycápthườngđượcbánkèmtheo bo,dây cápdùngđểcắm vàomáytính
đểnạpchương

trìnhchobovàdây

đồngthờicũnglấy

nguồntừnguồnusbcủamáy

tínhđểchobohoạtđộng.
NgoàiracápUSBcònđượcdùngđểtruyềndữliệutừboArduinolênmáytính.Dây
cápcó2 đầu,đầu1ađượcdùngđểcắmvàocổng USBtrênboArduino, đầu1b dùng
đểcắmvàocổng USBtrên máytính.
2. Chân ICSP atemega 16 U2

ICnàyđượclậptrìnhnhưmộtbộchuyểnđổiUSB–toSerialdùngđểgiaotiếpvớimáytính thôngquagiao thứcSerial (dùng cổngCOM).
3. Giác cấp nguồn cho mạch

12


Cổng nguồnngoàinhằmsửdụng nguồnđiệnbênngoàinhưpin,bìnhacquyhay
cácadapterchoboArduinohoạtđộng.NguồnđiệncấpvàocổngnàylànguồnDCcóhiệu
điệnthếtừ6Vđến20V, tuynhiên hiệu điệnthếtốt nhất mànhàsản xuất
4. Cổng USB
CổngUSBtrên bo Arduino dùngđểkết nối với cáp USB.
5. Nút Reset
Nútresetđượcsửdụngđểresetlạichươngtrìnhđangchạy.Đôikhichươngtrìnhchạ
ygặplỗi,người dùngcó thểreset lại chươngtrình..
6. Chân ICSP của Atemega 16U2
ICSPlàchữviếttắtcủaInCircuitSerialProgramming.ĐâylàcácchângiaotiếpSPIcủachip

Atmega16U2.

Cácchânnàythườngítđượcsử trongcácdựán vềArduino.
7. Chân xuất tín hiệu ra
Cótấtcả14chân xuấttínhiệuratrong ArduinoUno,những châncódấu~lànhững
châncóthể
bămxung(PWM),tứccóthểđiềukhiểntốcđộđộngcơhoặcđộsángcủađèn.Hình2thểhiệ
n rất rõ nhữngchân đểbăm xungnày.
8. IC Atmega 328
ICAtmega328làlinhhồncủabomạchArduinoUno,ICnày
đượcsửdụngtrongviệcthuthập dữ liệu từ cảm biến, xử lýdữ liệu, xuất tín hiệu
ra,…
9. Chân ICSP của Atmega 328

Các chân ICSP của ATmega 328 được sử dụng cho các giao tiếp SPI
(Serial

Peripheral

Interface),mộtsốứng

dụng

củaArduinocósử

dụng

chânnày,vídụnhưsửdụng moduleRFID RC522 với Arduino hayEthernet Shield
với Arduino.
10. Các chân lấy tín hiệu Analog

13


CácchânnàylấytínhiệuAnalog(tínhiệutương
tự)từcảmbiếnđểICAtmega328xửlý.Có tất cả6 chân lấytín hiệu Analog, từ A0
đến A5.
11. Chân cấp nguồn cho cảm biến
Cácchânnày
dùngđểcấpnguồnchocácthiếtbịbênngoàinhưrole,cảmbiến,RCservo,…trên
khuvựcnày
cósẵncácchânGND(chânnốiđất,chânâm),chân5V,chân3.3Vnhưđượcthể
hiệnởhình2.Nhờnhữngchânnày
màngườisửdụngkhôngcầnthiếtbịbiếnđổiđiệnkhicấp

nguồnchocảmbiến,role,rcservo,…Ngoàiratrênkhuvựcnày
còncóchânVinvàchânreset,

chânIOREF.Tuynhiêncácchân

nàythường

ítđượcsửdụng nêntrongtàiliệunàyxinkhông đi sâu vềnó.
12. Các linh kiện khác trên board mạch Arduino
Ngoài cáclinh kiện đãliệt kê bên trên, ArduinoUno còn 1 số linh kiện đáng
chúýkhác. Trên bo có tất cả4đènled,baogồm1lednguồn(ledONnhằmchobiếtboa
đãđược

cấpnguồn),2led

TxvàRx,1ledL.CácledTxvàRxsẽnhấpnháykhicódữliệutruyềntừboardlênmáy tính
hoặcngượclạithôngquacổngUSB.LedL
đượcđượckếtnốivớichânsố13.Lednàyđượcgọi làledonboard(tứcledtrênbo),lednày
giúpngườidùngcóthểthựchànhcácbàiđơngiảnmà không phải dùng thêm led bên
ngoài.
Trong14chânracủabocòncó2chân0và1cóthểtruyềnnhậndữliệunốitiếpTTL.C
ómột

sốứng

dụngcầndùng

đếntínhnăng

này,vídụnhưứng


dụng

điềukhiểnmạchArduinoUnoqua điện thoại sử dụngbluetooth HC05.Thêm vàođó,
chân 2vàchân 3cũngđượcsửdụng cho lậptrình ngắt (interrupt), đồngthờicòn 1
vàichânkháccóthểđượcsửdụng chocácchứcnăng khác,nhưđượcthểhiệnởhình3.
Bảng 1 thểhiện thêm cácthôngsố cho bo Arduino Uno R3.

14


Hình 2.3:. Các chân vào ra của Arduino Uno
Bảng 2.3. Một số thông số của Arduino UNO

Vi điều khiển

ATmega328 (họ 8bit)

Điện áp hoạt động

5V – DC (chỉ đượccấp qua cổngUSB)

Tần số hoạt động

16 MHz

Dòngtiêu thụ

30mA


Điện áp vào khuyên dùng

7-12V – DC

Điện áp vàogiới hạn

6-20V – DC

Số chân DigitalI/O

14 (6 chân PWM)

Số chân Analog

6 (độphângiải 10bit)

Dòngtốiđatrên mỗichân I/O

30 mA

Dòng ratốiđa (5V)

500 mA

Dòngratốiđa (3.3V)
Bộ nhớ flash

50 mA
32
KB(ATmega328)với0.5KBdùng

bootloader

SRAM
EEPROM

2 KB(ATmega328)
1 KB(ATmega328)

2.2.3. Phần mềm lập trình cho Arduino
1. Vào trang chủcủa Arduino:arduino.cc

15

bởi


2. Nhấn vào nút Download

3. Chọn hện điều hành
Có2tùy

chọnchohệ

điềuhànhWindowslàWindowsinstallervàWindowszipfilefornon admininstall.Tùy
chọnthứnhấtdùngchongườilàadmincủamáy,tùychọnthứ2chongười
khôngphảiadmin củamáy. Thông thườngđasố chọn tùychọn thứ nhất,
tứcWindows installer.
4. Download chƣơng trình về để cài đặt

16



5. Cài đặt
Phiênbảnđượcviếttrongbàinày

làphiênbảnIDE1.6.4.Đây

làphiênbảnmớinhấtcủaphần mềmIDE.Saunàycóthểsẽcónhữngphiênbảnkếtiếp,tuy
nhiênvềcơbảnthìcáchcàiđặt
giốngnhau.Saukhidownloadvềthìngườidùngsẽđược1file.exenhưhình7bêndưới.Để
càiđặt,người dùngnhấp đúp vào fileđó, phần mềm sẽbắt đầucài đặt.

Hình 2..4: File chạy phần mềm
Mộtthôngbáocóthểsẽđượchiệnlênvớihàngchữ:“doyouwanttorunthisfile?”,tứ
clàbạn có muốn chạyfilenàykhông?Người dùngclick và run (chạy) đểcài
chươngtrình.
6. Giao diện phần mềm
PhầnnàynóivềgiaodiệncủaphầnmềnIDE,hìnhbêndướithểhiệnnhữngphầncơb
ảncủa

giaodiện.Ngườidùngcóthểtìmhiểusâuhơnvềgiaodiệnnày,tuy

nhiênđây

làphầncơbản nhấtvàthường dùng nhấtđểcóthểhọcnhanhArduino,khicóthời gian
cácbạncóthểtìmhiểu
thêmcácbàiviếtvềnótrênarduino.cchoặcgoogle,…Cácchứcnăng

cơbảncủa


cácbiểutượng trên phần mềm đượctrình bàychi tiết ở cácphầnbên dưới.
a
c
b

d

e

17


GiaodiệncủaphầnmềmIDEcónhiềuphần,tuynhiênchúngtachúýđếnnhữngphầ
nquan trọngnhư đượcnêu ratronghìnhtrên. Chứcnăng củatừngphần như sau:
a. Vùng kiểm tra
Dùngđểkiểmtraxemchươngtrìnhđượcviếtcólỗikhông.Nếuchươngtrìnhbịlỗith
ìphần mềm sẽhiển thị thôngtin lỗi ở vùng(e).
b. Vùng nạp chương trình cho bo mạch Arduino
DùngđểnạpchươngtrìnhđượcviếtxuốngmạchArduino.Trongquátrìnhnạp,chư
ơngtrìnhsẽ đượckiểm tralỗi trướcsau đó mới thựchiện nạp xuốngmạch Arduino
c. Vùng hiển thị màn hình giao tiếp với máy tính
Khinhấpvàobiểutượngcáikínhlúpthìphầngiaotiếpvớimáytính
mởra.Phầnnàysẽ

sẽđược

hiểnthịcácthôngsốmàngườidùng

muốnđưalênmànhình.Muốnđưalênmànhìnhphảicó


lệnh

Serial.print()mới

cóthểđưathôngsố cần hiển thị lên màn hình
d. Vùng lập trình
Vùng này để người lập trình thực hiện việc lập trình cho chương trình của
mình.
e. Vùng thông báo thông tin
Cóchứcnăngthôngbáocácthôngtinlỗicủachươngtrìnhhoặccácvấnđềliênquanđ
ến chươngtrình đượclập.
f. Sử dụng một số menu thông dụng trong phần mềm
Có vài menu trong phần mềm IDE, tuy nhiên thông dụng nhất vẫn là menu
File, ngoài những tính năng như mở một file mới hay lưu một file, phần menu này
có một mục đáng chú ý là Example. Phần Example (ví dụ) đưa ra các ví dụ sẵn để
người lập trình có thể tham khảo, giảm bớt thời gian lập trình. Hình bên dưới thể
hiện việc chọn một ví dụ cho led chớp tắt (blink) để nạp cho mạch Arduino. Ví dụ
về led chớp tắt này thường được dùng để kiểm tra bo khi mới mua về.
MộtmenuthườngđượcsửdụngkháclàmenuTools.KhimớikếtnốiboArduinovới
máytính

taclickvàoTools-

18


×