Professional Documents
Culture Documents
MỤC LỤC
1
Khoa Điện - Điện tử 60TĐH2
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Cân nặng 25 g
3
Khoa Điện - Điện tử 60TĐH2
Các cổng vào/ra:
- 2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận
(receive – RX) dữ liệu TTL Serial. Arduino Uno có thể giao tiếp với
thiết bị khác thông qua 2 chân này.
- Chân PWM (~): 3,5,6,9,10 và 11: Các chân này có thể điều chỉnh được
điện áp ra từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như
những chân khác.
- Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Ngoài
các chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu
bằng giao thức SPI với các thiết bị khác.
- LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L). Khi
bấm nút Reset, đèn này sẽ nhấp nháy để báo hiệu. Nó được nối với chân
số 13. Khi chân này được sử dụng, LED sẽ sáng.
Giới thiệu vi điều khiển AVR (ATMEGA328)
6
Khoa Điện - Điện tử 60TĐH2
Thông số kỹ thuật:
PHẦN 2: LABVIEW
2.1. Labview.là gì
LabVIEW là một môi trường lập trình đồ họa mà bạn có thể sử dụng để tạo các
ứng dụng với giao diện người dùng chuyên nghiệp một cách nhanh chóng và hiệu
quả. Hàng triệu kỹ sư và nhà khoa học sử dụng LabVIEW để phát triển các ứng
dụng đo lường, kiểm thử, và điều khiển tinh vi bằng cách sử dụng các biểu tượng
trực quan và dây nối tín hiệu. Ngoài ra, LabVIEW có thể được mở rộng cho nhiều
nền tảng phẩn cứng và hệ điều hành khác nhau. Trong thực tế, nền tảng LabVIEW
có khả năng tích hợp với hàng nghìn thiết bị phần cứng và cung cấp hàng trăm thư
viện được xây dựng sẵn để phân tích nâng cao và hiển thị dữ liệu giúp bạn tạo ra các
thiết bị ảo có thể tùy chỉnh theo nhu cầu của mình.
Bởi vì chương trình LabVIEW mô phỏng giao diện và hoạt động của các thiết bị
thực, chẳng hạn như dao động ký và thiết bị đo đa năng, chương trình LabVIEW
được gọi là thiết bị ảo (Virtual Instrument), thường gọi tắt là VI. VI có Front Panel
7
Khoa Điện - Điện tử 60TĐH2
và Block Diagram. Front Panel là giao diện người dùng. Block Diagram là chương
trình phía sau giao diện người dùng. Sau khi bạn xây dựng Front Panel, bạn thêm
mã (code) để điều khiển các đối tượng trên Front Panel bằng cách sử dụng các hình
đồ họa đại diện cho các hàm. Mã trên Block Diagram là mã dạng đồ họa, thường
được biết đến là G code (mã G) hoặc Block Diagram code.
Khác với các ngôn ngữ lập trình dạng văn bản, như C++ và Visual
Basic, LabVIEW sử dụng các biểu tượng thay vì các dòng văn bản để tạo ra các ứng
dụng. Trong lập trình dạng văn bản, thứ tự các dòng lệnh xác định trình tự thực hiện
chương trình. LabVIEW sử dụng lập trình đồ họa dạng dòng chảy dữ liệu. Trong lập
trình đồ họa dạng dòng chảy dữ liệu, dòng chảy của dữ liệu qua các nút trên Block
Diagram xác định trình tự thực hiện chương trình. Lập trình đồ họa và thực thi dạng
dòng chảy dữ liệu là hai đặc tính chính làm LabVIEW khác với hầu hết ngôn ngữ
lập trình đa dụng khác.
Bước 2
Sau khi cài đặt xong ta vào VIPM và tìm giao diện Arduino cho LabVIEW với
từ khóa “LabVIEW Interface for Arduino” . Sau đó cài đặt LabVIEW Interface
for Arduino cho LabVIEW, lưu ý là phải đúng phiên bản của LabVIEW.
Bước 3
9
Khoa Điện - Điện tử 60TĐH2
Kết nối Arduino với máy tính qua cổng USB.
Bước 4
Nạp mã nguồn cho Arduino để có thể giao tiếp với LabVIEW.
Tìm đến <LabVIEW> là nơi chứa thư mục LabVIEW sau khi cài đặt.
Ví dụ: cài LabVIEW tại ổ C thì <LabVIEW> sẽ tương ứng với: C:\Program
Files\NationalInstruments\LabVIEW 20XX.
Chọn vi.lib\LabVIEW interface for Arduino\Firmware Kích đúp
vào LIFA_Base. Trình dịch IDE Arduino sẽ tự hiện thị
10
Khoa Điện - Điện tử 60TĐH2
Chọn đúng Board và Serial Port sau đó kích vào Upload để nạp vào Arduino.
Khi có thông báo Done uploading là đã nạp thành công và đã có thể làm việc
với Arduino trên LabVIEW.
11
Khoa Điện - Điện tử 60TĐH2
2.3 Khởi động LabVIEW
Khi bạn khởi động LabVIEW, cửa sổ Getting Started xuất hiện:
Sử dụng cửa sổ Getting Started để tạo ra các dự án mới và VI. Bạn có thể tạo
ra các chương trình từ đầu hoặc từ các chương trình mẫu và các ví dụ. Bạn cũng
có thể mở các tập tin LabVIEW đã có sẵn và truy cập vào các tài nguyên và trợ
giúp của cộng đồng LabVIEW.
Chọn File»Create Project để hiển thị hộp thoại Create Project. Hộp
thoại Create Project hiển thị một danh sách các chương trình mẫu và các ví dụ
mà bạn có thể sử dụng để đảm bảo rằng dự án bạn tạo ra sử dụng thiết kế đáng
tin cậy và phương thức lập trình chính thống.
Tìm dự án mẫu thích hợp với mục tiêu mà bạn muốn thực hiện với dự án. Sử
dụng các tính năng sau đây để tìm kiếm các dự án mẫu:
Filters – Chỉ hiển thị chỉ kết quả của một loại nhất định, chẳng hạn như các
dự án mẫu cho một mục tiêu cụ thể.
Additional Search - Tìm kiếm theo các từ khóa, tiêu đề, và mô tả của các
kết quả đã lọc.
More Information - Mở tập tin trợ giúp cho các mục. Xem lại các tập tin trợ
giúp để đảm bảo rằng dự án mẫu thích hợp với mục tiêu mà bạn muốn dự án
thực hiện.
Nhấn nút Next hay Finish để cấu hình chi tiết cho dự án, bao gồm cách lưu
dự án. Sau khi bạn hoàn thành việc cấu hình dự án, LabVIEW lưu dự án và mở
cửa sổ Project Explorer.
12
Khoa Điện - Điện tử 60TĐH2
Sử dụng cửa sổ Project Explorer để chỉnh sửa dự án. Tham khảo các ghi chú
trên block diagram của VI trong dự án mẫu để biết thêm thông tin về cách chỉnh
sửa dự án. Tham khảo thêm thư mục Project Documentation trong cửa
sổ Project Explorer để biết thêm thông tin về cách chỉnh sửa dự án.
Các thanh công cụ liên quan
Sử dụng các nút trên các thanh công cụ Standard, Project, Build, và Source
Control để thực hiện các hoạt động trong một dự án LabVIEW. Các thanh công
cụ có sẵn ở trên cùng của cửa sổ Project Explorer. Bạn có thể cần phải mở rộng
cửa sổ Project Explorer để xem tất cả các thanh công cụ.
- Numeric : Các phép toán cơ bản: Cộng, Trừ, Nhân, Chia, Cộng 1, Trừ 1, Bình
phương, Đảo dấu, Hàm Random, Dịch bit, …
14
Khoa Điện - Điện tử 60TĐH2
Mỗi biến được phân biệt bằng các màu trong Block Diagram. Ví dụ:
• Kiểu Numeric dạng Float (số 64 bit dấu phảy động) là kiểu biến có dải giá trị
15
Khoa Điện - Điện tử 60TĐH2
lớn nhất, với độ chính xác cao nhất nhưng tốn nhiều dung lượng chương trình
nhất, biểu diện bằng màu vàng da cam
• Các kiểu Numeric Integer: Int8, Int16, Int32, Int64 (số nguyên 8, 16, 32, 64
bit) và U8, U16, U32, U64 (số nguyên không dấu 8,16,32,64 bit) được biểu diễn
màu xanh da trời
• String: Chuỗi ký tự, biểu diễn màu hồng
• Boolean : Kiểu Logic, là kiểu biến cho các nút bấm, đèn led và các giá trị logic
khác, biểu diễn bằng màu xanh lá cây
f.Thực thi chương trình đơn giản
- Để thực thi một phép toán trong Labview, đơn giản nối các tham số vào đầu
vào của khối hàm, và nối đầu ra.
- chú ý: đầu vào của các khối hàm thường là các biến Điều khiển (Controls), đầu
ra thường là các biến Hiển thị (Indicators).
- các hàm thường được thực thi theo hướng từ trái sang phải. Vì thế khi lập trình
trong LabVIEW, ta nên chú ý sắp xếp chương trình theo hướng đó để đảm bảo
sự thống nhất trong chương trình, tiện lợi cho việc theo dõi, debug về sau.
16
Khoa Điện - Điện tử 60TĐH2
PHẦN 3: KẾT NỐI, ĐIỀU KHIỂN
3.1. Sơ đồ kết nối
#include "HX711.h"
17
Khoa Điện - Điện tử 60TĐH2
void setup() {
Serial.begin(9600);
Serial.println("HX711 he so hieu chuan");
Serial.println("xoa tat ca trong luong khoi can");
Serial.println("sau khi bat dau doc , dat trong luong da biet len can");
Serial.println("nhan + hoac a de tang he so hieu chuan");
Serial.println("nhan - hoac z de giam he so hieu chuan");
scale.set_scale();
scale.tare(); //dat lai thang do ve 0
void loop() {
if(Serial.available())
{
char temp = Serial.read();
if(temp == '+' || temp == 'a')
calibration_factor += 1;
else if(temp == '-' || temp == 'z')
calibration_factor -= 1;
}
delay(2000);
}
19
Khoa Điện - Điện tử 60TĐH2
20
Khoa Điện - Điện tử 60TĐH2
- VISA resource name out : là bản sao của tên tài nguyên VISA mà các
hàm VISA trả về
- VISA resource name : chỉ định tài nguyên sẽ được mở. Điều khiển tên
tài nguyên VISA cũng chỉ định phiên và lớp
- baud rate : là tốc độ truyền. Giá trị mặc định là 9600.
* VISA Read
Đọc số byte được chỉ định từ thiết bị hoặc giao diện được chỉ định bởi tên tài
nguyên VISA và trả về dữ liệu trong bộ đệm đọc.
- VISA resource name : chỉ định tài nguyên sẽ được mở. Điều khiển tên tài
nguyên VISA cũng chỉ định phiên và lớp.
- byte count là số byte được đọc
- error in Dạng đồng mô tả các điều kiện lỗi xảy ra trước khi nút này chạy. Đầu
vào này cung cấp lỗi tiêu chuẩn trong func
- VISA resource name out là bản sao của tên tài nguyên VISA mà các hàm
VISA trả về.
- read buffer chứa dữ liệu được đọc từ thiết bị.
- error out chứa thông tin lỗi. Đầu ra này cung cấp chức năng xử lý lỗi tiêu
chuẩn.
* VISA Flush I/O Buffer
Xả bộ đệm I / O được chỉ định bởi mask
21
Khoa Điện - Điện tử 60TĐH2
- VISA resource name chỉ định tài nguyên sẽ được mở. Điều khiển tên tài
nguyên VISA cũng chỉ định phiên và lớp.
- mask chỉ định bộ đệm xả. Kết hợp các mask đệm theo từng bit để xóa nhiều
hơn một bộ đệm đồng thời. Sử dụng OR logic, còn được gọi là OR-ing hoặc
thêm, để kết hợp các giá trị. Chỉ sử dụng một giá trị mask cho bộ đệm nhận và
chỉ một giá trị mask cho bộ đệm truyền.
- VISA resource name out là bản sao của tên tài nguyên VISA mà các hàm
VISA trả về.
- error out chứa thông tin lỗi. Đầu ra này cung cấp chức năng xử lý lỗi tiêu
chuẩn
* VISA Close
- VISA resource name chỉ định tài nguyên sẽ được mở. Điều khiển tên tài
nguyên VISA cũng chỉ định phiên và lớp
- error in mô tả các điều kiện lỗi xảy ra trước khi nút này chạy.
- error out chứa thông tin lỗi. Đầu ra này cung cấp chức năng xử lý lỗi tiêu
chuẩn.
b. Dạng đồng hồ
22
Khoa Điện - Điện tử 60TĐH2
- input string chỉ định chuỗi đầu vào mà hàm tìm kiếm. Chuỗi này không được
chứa các ký tự rỗng
- regular expression chỉ định mẫu muốn tìm kiếm trong chuỗi đầu vào. Nếu
hàm không tìm thấy kết quả phù hợp, toàn bộ kết hợp và sau so khớp chứa các
chuỗi trống, trước khi so khớp chứa toàn bộ chuỗi đầu vào, bù đắp kết quả khớp
trước đây trả về –1 và tất cả các kết quả khớp con trả về chuỗi trống.
- after match trả về tất cả các ký tự sau khi kết thúc
* Scan Value
23
Khoa Điện - Điện tử 60TĐH2
Chuyển đổi các ký tự ở đầu chuỗi thành kiểu dữ liệu được đại diện theo mặc
định, theo mã chuyển đổi trong chuỗi định dạng và trả về số được chuyển đổi về
giá trị và phần còn lại của chuỗi sau khi khớp trong chuỗi đầu ra.
Lần 1 Lần 2 Lần Lần 4 Lần Lần Lần 7 Lần Lần 9 Lần
3 5 6 8 10
103,8 102,47 98,63 102,71 99,42 98,36 101,83 98,6 102,74 99,54
1
24