1. Trang chủ >
  2. Kỹ thuật >
  3. Điện - Điện tử - Viễn thông >

Khả năng của bo mạch Arduino

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 (3.17 MB, 46 trang )


Nghiên cứu KHCN











Xung nhịp: 16MHz

EEPROM: 1KB (ATmega328) và 4KB (ATmega2560)

SRAM: 2KB (Atmega328) và 8KB (Atmega2560)

Flash: 32KB (Atmega328) và 256KB (Atmega2560)



Người dùng có thể linh hoạt số lượng ngõ vào và ngõ ra.

Digital: Tổng số lượng cổng digital trên các mạch dùng Atmega328 là 14, và

trên Atmega2560 là 54.

Analog: Các bo mạch Arduino đều có trang bị các ngõ vào analog với độ phân

giải 10-bit (1024 phân mức, ví dụ với điện áp chuẩn là 5V thì độ phân giải khoảng

0.5mV). Số lượng cổng vào analog là 6 đối với Atmega328, và 16 đối với

Atmega2560. Với tính năng đọc analog, người dùng có thể đọc nhiều loại cảm biến

như nhiệt độ, áp suất, độ ẩm, ánh sáng, gyro, accelerometer…

- PWM: Độ phân giải các chân này là 8-bit. Số lượng cổng PWM đối với các

bo dùng Atmega328 là 6, và đối với các bo dùng Atmega2560 là 14. PWM có nhiều

ứng dụng trong viễn thông, xử lý âm thanh hoặc điều khiển động cơ mà phổ biến nhất

là động cơ DC trong các máy bay mơ hình.

Mơi trường lập trình bo mạch Arduino: Thiết kế bo mạch nhỏ gọn, trang bị nhiều

tính năng thơng dụng mang lại nhiều lợi thế cho Arduino, tuy nhiên sức mạnh thực sự

của Arduino nằm ở phần mềm. Mơi trường lập trình đơn giản dễ sử dụng, ngơn ngữ

lập trình Wiring dễ hiểu và dựa trên nền tảng C/C++ rất quen thuộc với người làm kỹ

thuật. Quan trọng là số lượng thư viện code được viết sẵn và chia sẻ bởi cộng đồng.

 Giao diện IDE của Arduino

Mơi trường lập trình Arduino IDE có thể chạy trên ba nền tảng phổ biến nhất

hiện nay là Windows, Macintosh OSX và Linux.

Do có tính chất nguồn mở nên mơi trường lập trình này hồn tồn miễn phí và

có thể mở rộng.

Ngơn ngữ lập trình có thể được mở rộng thông qua các thư viện C++. Và do

ngôn ngữ lập trình này dựa trên nền tảng ngơn ngữ C của AVR nên người dùng hồn

tồn có thể nhúng thêm code viết bằng AVR C vào chương trình.

 Kết nối với Arduino

Page 16



Nghiên cứu KHCN

Kết nối phần cứng Arduino với phần mềm Arduino trên máy tính là việc đầu

tiên các bạn thực hiện để có thể tiến hành lập trình, các bước đơn giản như sau:

Bước 1: Tải và cài đặt phần mềm

Bước 2: Các bạn kết nối phần cứng là Board mạch Arduino vào máy tính qua

cổng USB, giúp Arduino giao tiếp với máy tính (truyền nhận dữ liệu) cũng như cấp

nguồn 5VDC qua cổng USB cho board hoạt động. Khi kết nối board mạch với máy

tính, board sẽ tự động cài Driver, nếu không cần thực hiện thêm các bước sau (thực

hiện trên hệ điều hành Windows, Linux hoặc Mac):

Nhấp chuột phải vào My Computer > Device Manager > Other Devices sẽ thấy

1 mục xuất hiện khi cắm board vào là Unknow devices hoặc Arduino. ( Hình 2.2)

Nhấn chuột phải vào mục vừa

xuất hiện trong Other Devices >

Update Driver Software > Browse

my computer for Driver software,

sau đó chọn đường dẫn là thư mục

Arduino vừa cài đặt vào máy tính

(thường nằm trong Program Files),

sau đó nhấn OK và chờ đợi cho đến

khi cài đặt thành cơng.



Hình . Giao diện vào Ports (COM&LPT)



Sau khi cài đặt thành công, trong Device Manager sẽ hiện tên board tương ứng

kèm thứ tự cổng Comport như sau:

* Thông tin thêm: Ở bước 2 khi các bạn cài đặt thành công, việc hiện Arduino

như một thiết bị kết nối cổng COM trên máy tính chứng tỏ giao tiếp thực tế giữa

Arduino và máy tính khơng phải là giao tiếp USB mà thông qua 1 IC chuyển giao tiếp

từ USB sang COM, so với USB thì COM là 1 giao tiếp có độ đơn giản và dễ dàng sử

dụng hơn rất nhiều khi lập trình.



Page 17



Nghiên cứu KHCN

Bước 3: Mở phần mềm Arduino

vừa cài đặt > Tools > Board, chọn

board Arduino tương ứng đang sử

dụng, sau đó chọn Tools > Serial Port,

chọn cổng COM theo thứ tự tương ứng

của Board trong Device Manager, nếu

có thêm mục Tools > Processor thì

chọn vi điều khiển tương tứng trên

board (trên IC trung tâm thường có in

tên), nếu khơng thì khơng cần chọn. Hình . Giao diện Arduino (Hình 2.3)

Bước 4: Chọn 1 ví dụ đơn giản trong File > Examples > Basic > Blink, sau đó nhấn

Ctrl + U để tiến hành nạp thử, khi nạp bạn sẽ thấy 2 đèn báo TX, RX trên board chớp

báo hiệu đang nạp chương trình, sau khi hồn tất hai đèn này sẽ ngừng chớp và

chương trình bắt đầu hoạt động. (Hình 2.4)



Lưu ý:

Khi chương trình đã được nạp, nó sẽ được lưu giữ cho đến khi nạp chương trình

mới, khi nạp chương trình mới đồng nghĩa với 2 việc là bạn xóa chương trình cũ và

chương trình mới được nạp, để

thấy rõ tất cả tiến trình nạp

chương trình xin chọn File >

Preferences



>



Show



verbose



output during, tick vào hai mục là

compilation và upload để theo dõi

tồn bộ q trình này.

Các loại bo mạch Arduino:

Hình . Giao diện Arduino-hướng dẫn nạp

chương trình

Page 18



Nghiên cứu KHCN

Về mặt chức năng, các bo mạch Arduino được chia thành hai loại: loại bo mạch

chính có chip Atmega và loại mở rộng thêm chức năng cho bo mạch chính (thường

được gọi là shield).

Các bo mạch chính về cơ bản là giống nhau về chức năng, tuy nhiên về mặt cấu

hình như số lượng I/O, dung lượng bộ nhớ, hay kích thước có sự khác nhau. Một số bo

có trang bị thêm các tính năng kết nối như Ethernet và Bluetooth.

Các bo mở rộng chủ yếu mở rộng thêm một số tính năng cho bo mạch chính ví

dụ như tính năng kết nối Ethernet, Wireless, điều khiển động cơ v.v…

b, Arduino Mega 2560

Giới thiệu:

Arduino Mega 2560 là phiên bản nâng cấp của Arduino Mega hay còn gọi là

Arduino Mega 1280. Sự khác biệt lớn nhất với Arduino Mega 1280 là chip nhân.

Ở Arduino Mega 1280 sử dụng chip ATmega1280 với flash memory 128KB,

SRAM 8KB và EEPROM 4 KB

Arduino Mega 2560 là phiên bản hiện đang được sử dụng rộng rãi và ứng dụng

nhiều hơn. Với chip ATmega2560 có bộ nhớ flash memory 256 KB, 8KB cho bộ nhớ

SRAM, 4 KB cho bộ nhớ EEPROM. Giúp cho người dùng thêm khả năng viết những

chương trình phức tạp và điều khiển các thiết bị lớn hơn như máy in 3D, điều khiển

robot.



Hình 2.1 Mega 2560

Ngồi ra có những phiên bản khác như Arduino Mega ADK, hay Arduino DUE

với những tính năng cao cấp hơn.(Hình 2.5)



Page 19



Nghiên cứu KHCN

Arduino Mega 2560 là một vi điều khiển hoạt động dựa trên chip ATmega2560.

Bao gồm:

 54 chân digital (trong đó có 15 chân có thể được sủ dụng như những

chân PWM là từ chân số 2 → 13 và chân 44 45 46).

 6 ngắt ngoài: chân 2 (interrupt 0), chân 3 (interrupt 1), chân 18 (interrupt

















5), chân 19 (interrupt 4), chân 20 (interrupt 3), and chân 21 (interrupt 2).

16 chân vào analog (từ A0 đến A15).

1 thạch anh với tần số dao động 16 MHz.

1 cổng kết nối USB.

1 jack cắm điện.

1 đầu ICSP.

1 nút reset.

4 cổng Serial giao tiếp với phần cứng:



CỔNG SERIAL



CHÂN RX



CHÂN TX



Cổng 0



0



1



Cổng 1



19



18



Cổng 2



17



16



Cổng 3



15



14



Bảng Thông số kĩ thuật

Chip xử lý



ATmega2560



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



5V



Điện áp vào (đề nghị)



7V-15V



Điện áp vào (giới hạn)



6V-20V



Cường độ dòng điện trên mỗi 3.3V pin



50 mA



Cường độ dòng điện trên mỗi I/O pin



20 mA



Flash Memory



256 KB



SRAM



8 KB



EEPROM



4 KB



Clock Speed



16 MHz



Ưu điểm của thiết bị:

- Mạnh mẽ với bộ nhớ flash lớn, số chân nhiều hơn và cùng số lượng shield hỗ

trợ không nhỏ, Arduino Mega được đưa vào các dự án lớn hơn như xử lý thông



Page 20



Nghiên cứu KHCN

tin nhiều luồng, điều khiền nhiều động cơ, xe điều khiển từ xa, LED cube hay

còn mở rộng cánh cửa với thế giới IoT.

- Giá thành không cao, dễ tìm mua và lắp đặt.

2.3 Acquy Và Khối Nguồn 5V



- Chọn acquy (Hình 2.6): Để đảm bảo yêu cầu chạy trong công ty xe AGV phải

đáp ứng được quá trình sử dụng bình ắc quy trong thời gian 4h làm việc. Cơng

thức tính thời lượng dùng ắc quy được tính như sau:



Trong đó:

T –thời gian cần có điện trong hệ thống, giờ;

Ah –dung lượng bình ắc quy, Ah;

U – hiệu điện thế của ắc quy, V;

pt – hiệu suất của hệ thống: 0,8

P – công suất tiêu thụ của tải, W;

Vậy đối với loại bình ắc quy 12VDC để đáp



Hình . Ac quy 12V /6A

ứng được yêu cầu làm việc 8h thì dung lượng ắc quy cần thiết sẽ là:

Ah==

Nguồn 7.4V chúng em sử dụng nguồn riêng từ 2 quả Cell pin   samsung Lion

IRC18650-5R-2600mAh. (Hình 2.7)

2.4 Khối cảm biến

Khối dò line (Hình 2.8)

Ngun lí cảm biến hồng ngoại:

-



Gồm một mắt phát và thu hồng



-



ngoại.

Khi nhân được tín hiệu hồng



Hình . Pin cell 18650



ngoại từ đèn phát thì đèn thu sẽ

hoạt động.

Hình . Mạch dò line

Page 21



Nghiên cứu KHCN

-



Khi có ánh sáng hồng ngoại từ led phát, nếu có một vật cản, ánh sáng sẽ được



-



phản xạ lại led thu.

Ứng dụng: dùng trong các ứng dụng phát hiện vật cản, xe dò đường,....

Cảm biến dò line làm việc dựa trên nguyên lí giống cảm biến hồng ngoại.

Về mặt cơ bản 1 led phát hồng ngoại 1 led thu hồng ngoại . Khi nhận được tín



hiệu hồng ngoại từ đèn phát thì đèn thu sẽ hoạt động. Khi có ánh sáng hồng ngoại từ

led phát, nếu có một vật cản, ánh sáng sẽ được phản xạ lại led thu. Vậy nên nhóm

chúng em đã chọn loại cảm biến dò line MTE-L021.

Thông số kỹ thuật:

-



Điện áp hoạt động: 5V (DC)

Vi xử lí tích hợp: Stm8s003F3P6

Số mắt line số: 5 mắt

Tín hiệu trả về: Digital (0/1)

Kích thước: Rộng: 27mm, Dài: 107mm, Cao 190mm.



Sơ đồ nguyên lý mạch : (Hình 2.9)



Hình . Sơ đồ nguyên lý



Cảm biến siêu âm HC-SRF04



Hình . Nguyên lý hoạt

động



Hình . Các chân HC_SRF04



Page 22



Nghiên cứu KHCN

Cảm biến siêu âm HC-SRF04 (Hình 2.10+2.11)

- Nguồn làm việc: 5V (một số mạch điện tử có thể cấp nguồn 3.3V vẫn hoạt động

-



bình thường nhưng cảm biến siêu âm cần hoạt động ở mức 5V)

Dòng tiêu thụ: nhỏ hơn 2mA

Tín hiệu đầu ra: xung HIGH (5V) và LOW (0V)

Khoảng cách đo: 2cm – 300cm (3 mét)

Độ chính xác: 0.5cm



Cảm biến siêu âm có 4 chân:

- Vcc --> nguồn 5V

- Trig --> nối vi điều khiển (ngõ phát) (có thể sử dụng mức áp 3.3V để kích cảm

biến mà khơng ảnh hưởng đến kết quả)

- Echo --> nối vi điều khiển (ngõ thu)

- Gnd --> nối âm

Cảm biến siêu âm HC SR04 sử dụng 2 thành phần phát – nhận siêu âm.

Cảm biến siêu âm SR04 hoạt động bằng cách phát 1 tín hiệu siêu âm (tần số

40Khz) và bắt đầu đếm thời gian nhận được tín hiệu phản hồi.

Khoảng cách do cảm biến siêu âm SR-04 được tính từ tốc độ và thời gian phản

hồi.

Độ chính xác về khoảng cách của cảm biến siêu âm HC-SR04 phụ thuộc lớn

vào cách bạn lập trình phát – thu tín hiệu.

Cảm biến siêu âm hoạt động bằng cách phát đi 1 xung tín hiệu và đo thời gian

nhận được tín hiệu trở vể. Sau khi đo được tín hiệu trở về trên cảm biến siêu âm, ta

tính được thời gian từ lúc phát đến lúc nhận được tín hiệu. Từ thời gian này có thể tính

ra được khoảng cách.

Nếu đo được chính xác thời gian và khơng có nhiễu, mạch cảm biến siêu âm trả

về kết quả cực kì chính xác. Điều này phụ thuộc vào cách viết chương trình khơng sử

dụng các hàm delay.



Page 23



Nghiên cứu KHCN

2.5 Khối động cơ



2.5.1 Chọn động cơ

Động cơ Planet RS775 12V/24V-60W 200RPM (Hình 2.12) là động cơ servo

nam châm vĩnh cửu có chổi than. Động cơ được dùng cho các ứng dụng đòi hỏi sự

chính xác. Động cơ được gắn một encoder kèm theo để phản hồi vị trí cho bộ điều

khiển.

Các ưu điểm:

* Nhiễu tạp nhỏ.

* Kèm theo encoder (13ppr).

* Một vị trí có thể được giới hạn

đến một xung.

* Chi phí thấp.

* Tính năng kỹ thuật cao.

Thông số kỹ thuật:

* Hộp giảm tốc Planet 2 cấp bánh

răng.

* Đầu trục 8mm.

* Tốc độ đầu trục: 200RPM tại

điện áp 12V (350-400RPM tại

*

*

*

*

*

*



Hình . Động cơ Planet

điện áp 24V).

Cơng suất: 60W.

Dòng khơng tải: 0.3A.

Dòng tải nhẹ: 0.8-1A.

Dòng tải nặng: 1.5-3A.

Dòng tải làm động cơ kẹt trục: 10-15A.

Momen xoắn: 20-25kgfcm.



2.5.2 Khối Driver Điều Khiển Động Cơ

-



Diver nhận tín hiệu từ bộ vi xử lý trung tâm, xuất tín hiệu điều khiển tốc độ

chạy của động cơ. Diver cho phép hãm dừng động cơ một cách nhanh chóng.

Page 24



Nghiên cứu KHCN

-



Qua tìm tìm tòi nghiên cứu tài liệu cẩn thận kĩ lưỡng, nhóm sử bộ driver điều

khiển tốc độ động cơ theo phương pháp PID vận tốc.



2.5.3 Phương pháp điều chỉnh:

Hệ thống điều chỉnh tốc độ robot AGV (Hình 2.13): Thực hiện điều chỉnh tốc



Hình . Cấu trúc bộ điều khiển tốc độ động cơ

độ robot thông qua điều chỉnh tốc độ của động cơ truyền động cho hai bánh phía sau.

Cấu trúc hệ thống điều chỉnh tốc độ cũng là một hệ kín. Tốc độ của xe AGV được đo

nhờ bộ Encoder. Đầu ra của Encoder là lượng xung phát ra tỷ lệ với số vòng quay hay

vận tốc đầu vào.

Giá trị tốc độ phản hồi mà encoder đo được đưa tới bộ điều khiển. Bộ điều

chỉnh này sẽ tính tốn và cho giá trị đầu ra được gán vào bộ điều xung. Xung từ bộ

điều khiển sẽ thực hiện đóng cắt van bán dẫn tạo ra giá trị điện áp đầu ra U thay đổi

cấp cho động cơ. Như vậy đối với hệ thống điều chỉnh tốc độ phản hồi mạch kín thì

giá trị vận tốc ln ổn định và bám theo giá trị lượng đặt.

Việc nghiên cứu và thiết kế driver điều khiển động cơ là một quá trình quan

trọng, ảnh hưởng rất lớn đến quá trình làm việc của xe AGV.

 Nhóm em sử dụng vi điều khiển mega 2560 làm chíp xử lí tín hiệu phản hồi

từ ecoder của động cơ, từ đó truyền dữ liệu làm thay đổi tốc độ động cơ (xem phần

đính kèm code driver động cơ).



Page 25



Nghiên cứu KHCN

2.6 Khối hiển thị

LCD (Hình 2.14) là

khối hiển thị thơng dụng để

thơng tin cho người sử dụng

biết là xe đang ở chế độ hoạt

động nào và năng lượng bình

ra sao để kịp thời quay về vi

trí sạc tự động đã được thiết

kế trên mặt sàn.



Hình . LCD 20x4A



2.7 Khối cảnh báo

Cảnh báo khi gặp vật cản, chướng ngại vật và tại vị trí nâng hàng, hạ hàng.

(Hình 2.15+2.16)



Hình . Còi



Hình . LED cảnh báo



Page 26



Xem Thêm
Tải bản đầy đủ (.docx) (46 trang)

×