1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng

30 252 4

Đ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 30
Dung lượng 3,32 MB

Nội dung

Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng sử dụng vi điều khiển Arduino Uno R3, cảm biến nhiệt độ LM35 và cảm biến ánh sáng BH 1750 .......................................................................

CHƯƠNG PHÂN TÍCH CƠNG NGHỆ THIẾT KẾ 1.1 u cầu cơng nghệ 1.1.1 u cầu tốn ĐỀ BÀI : Xây dựng giao diện hiển thị CSDL cho hệ thống đo thông số nhiệt độ, ánh sáng 1.1.2 Ý tưởng thực + Xây dựng giao diện điều khiển thiết bị WinForm + Ghép nối cảm biến nhiệt độ, cảm biến ánh sáng với vi điều khiển Arduino Uno R3 + Xây dựng sở liệu SQL Sever + Viết chương trình điều khiển lưu liêu điều khiển vào SQL + Viết chương trình nhận lệnh thực thi lệnh cho Arduino + Hồn thành hệ thống • Phần cứng sử dụng *Hệ thống gồm có : + 01 Vi điều khiển Arduino Uno R3 + 01 Cảm biến nhiệt độ ( LM35 ) + 01 Cảm biến ánh sáng ( BH1750 ) • • Tổng quát vi điều khiển Arduino Uno R3 Giới thiệu Arduino Hình 1.1 Arduino Uno R3 Arduino board mạch vi xử lý, nhằm xây dựng ứng dụng tương tác với với môi trường thuận lợi Phần cứng bao gồm board mạch nguồn mở thiết kế tảng vi xử lý AVR Atmel 8bit, ARM Atmel 32-bit Những Model trang bị gồm cổng giao tiếp USB, chân đầu vào analog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác • Được giới thiệu vào năm 2005, Những nhà thiết kế Arduino cố gắng mang đến phương thức dễ dàng, không tốn cho người yêu thích, sinh viên giới chuyên nghiệp để tạo thiết bị có khả tương tác với môi trường thông qua cảm biến cấu chấp hành Những ví dụ phổ biến cho người yêu thích bắt đầu bao gồm robot đơn giản, điều khiển nhiệt độ phát chuyển động Đi với mơi trường phát triển tích hợp (IDE) chạy máy tính cá nhân thơng thường cho phép người dùng viết chương trình cho Aduino ngơn ngữ C C++ • Giá board Arduino dao động xung quanh €20, $27 574 468VNĐ, "làm giả" giá giảm xuống thấp $9 Các board Arduino đặt hàng dạng lắp sẵn dạng kit tự-làm-lấy Thông tin thiết kế phần cứng cung cấp công khai để muốn tự làm mạch Arduino tay tự thực (mã nguồn mở) Người ta ước tính khoảng năm 2011 có 300 ngàn mạch Arduino thức sản xuất thương mại, vào năm 2013 có khoảng 700 ngàn mạch thức đưa tới tay người dùng 1.2.1.2 Sơ đồ chân Arduino Uno R3 + Sơ đồ chân Arduino : Hình 1.2 Sơ đồ chân Arduino + Sơ đồ nguyên lí Arduino : Hình 1.2 Sơ đồ ngun lý Arduino 1.2.1.3 Thông số kĩ thuật Arduino Uno xây dựng với phân nhân vi điều khiển ATmega328P sử dụng thạch anh có chu kì dao động 16 MHz Với vi điều khiển này, ta có tổng cộng 14 pin (ngõ) / vào đánh số từ tới 13 (trong có pin PWM, đánh dấu ~ trước mã số pin) Song song đó, ta có thêm pin nhận tín hiệu analog đánh kí hiệu từ A0 - A5, pin sử dụng pin / vào bình thường (như pin - 13) Ở pin đề cập, pin 13 pin đặc biệt nối trực tiếp với LED trạng thái board Trên board có nút reset, ngõ kết nối với máy tính qua cổng USB ngõ cấp nguồn sử dụng jack 2.1mm lấy lượng trực tiếp từ AC-DC adapter hay thông qua ắc-quy nguồn Khi làm việc với Arduino board, số thuật ngữ sau cần lưu ý: • Flash Memory: nhớ ghi được, liệu khơng bị tắt điện Về vai trò, ta hình dung nhớ ổ cứng để chứa liệu board Chương trình viết cho Arduino lưu Kích thước vùng nhớ thông thường dựa vào vi điều khiển sử dụng, ví dụ ATmega8 có 8KB flash memory Loại nhớ chịu khoảng 10,000 lần ghi / xố • RAM: tương tự RAM máy tính, bị liệu ngắt điện bù lại tốc độ đọc ghi xoá nhanh Kích thước nhỏ Flash Memory nhiều lần • EEPROM: dạng nhớ tương tự Flash Memory có chu kì ghi / xố cao - khoảng 100,000 lần có kích thước nhỏ Để đọc / ghi liệu ta dùng thư viện EEPROM Arduino Ngồi ra, board Arduino cung cấp cho ta pin khác pin cấp nguồn 3.3V, pin cấp nguồn 5V, pin GND Thơng số kỹ thuật Arduino board tóm tắt bảng sau: Vi điều khiển Điện áp hoạt động Điện áp vào khuyên dùng Điện áp vào giới hạn Digital I/O pin PWM Digital I/O Pins Analog Input Pins Cường độ dòng điện I/O pin Cường độ dòng điện 3.3V pin Flash Memory SRAM EEPROM Tốc độ Chiều dài Chiều rộng Trọng lượng ATmega328P 5V 7-12V 6-20V 14 (trong pin có khả băm xung) 6 20 mA 50 mA 32 KB (ATmega328P) 0.5 KB sử dụng bootloader KB (ATmega328P) KB (ATmega328P) 16 MHz 68.6 mm 53.4 mm 25 g 1.2.1.4 Hướng dẫn nạp chương trình cho Arduino Bước 1: Kết nối Arduino UNO R3 vào máy tính Bước 2: Tìm cổng kết nối Arduino Uno R3 với máy tính Khi Arduino Uno R3 kết nối với máy tính, sử dụng cổng COM (Communication port cổng liệu ảo) để máy tính bo mạch truyền tải liệu qua lại thơng qua cổng Windows quản lí đến 256 cổng COM Để tìm cổng COM sử dụng để máy tính mạch Arduino UNO R3 giao tiếp với nhau, bạn phải mở chức Device Manager Windows Bạn mở cửa sổ Run gõ lệnh mmc devmgmt.msc Sau bấm Enter, cửa sổ Device Manager lên Mở mục Ports (COM & LPT), bạn thấy cổng COM Arduino Uno R3 kết nối Cổng kết nối COM3 Thông thường, lần kết nối tiếp theo, Windows sử dụng lại cổng COM3 để kết nối nên bạn không cần thực thêm thao tác tìm cổng COM Bước 3: Khởi động Arduino IDE Bước 4: Cấu hình phiên làm việc cho Arduino IDE Vào menu Tools -> Board -> chọn Arduino Uno Vào menu Tools -> Serial Port -> chọn cổng Arduino kết nối với máy tính Ở máy COM3 Xác nhận cổng COM Arduino IDE góc bên phải cửa sổ làm việc Vào menu Tools -> Programmer -> chọn AVR ISP 2.1.2 Chức khối * Chức khối nguồn : chuyển đồi nguồn từ 220V AC thành 5V DC cung cấp nguồn điện cho khối xử lí trung tâm ,khối cảm biến khối chấp hành * Chức khối chấp hành : nhận tín hiệu điều khiển từ Arduino thực quay sevor theo tín hiệu, bật tắt còi theo tín hiệu nhận * Khối cảm biến : đọc thông số đo gửi mã lên khối xử lí trung tâm * Chức khối xử lí trung tâm : - Nhận liệu nhiệt độ, ánh sáng từ khối cảm biến gửi lên, xử lí liệu , đóng gói khung truyền gửi lên máy tính - Nhận lệnh điều khiển từ máy tính thực điều khiển khối chấp hành (động sevor,đèn led còi ) * Chức máy tính : - nhận liệu cảm biến gửi lên từ arduino,phân tích xử lí liệu sau lưu vào sở liệu - nhận lệnh điều khiển từ người quản lí, xử lí lệnh điều khiển thực mã hóa liệu gửi lệnh điều khiển xuống cho khối xử lí trung tâm 2.2 Phân tích thiết kế hệ thống 2.2.1 Khối nguồn (220V AC-5V DC) * Mạch nguyên lí * Nguyên lý hoạt động : mạch điện xoay chiều từ biến áp qua cầu chỉnh lưu thành chiều.sau qua tụ mạch phẳng sau mạch dương vào chân ổn áp dương lm7805 chân 3.Điện áp khoảng 5vol.Chân GND nối với chân âm cầu chỉnh lưu.Sau 5v lại tụ lọc nguồn cuối điện áp ổn định 5v 2.2.2 Khối cảm biến nhiệt độ ánh sáng *Mạch nguyên lý *Nguyên lý hoạt động : Khi có nguồn điện cấp vào Arduino, Nguồn điện truyền thẳng vào cảm biến đọc từ chân A1 A2 Arduino Và thơng số độ ẩm ánh sáng hiển thị mô Virtual qua chân TXD RXD nối với Arduino Uno R3 2.2.3 Khối xử lý trung tâm *Mạch nguyên lý Hình 2.2 Mạch nguyên lý khối xử lý trung tâm *Nguyên lý hoạt động: Arduino Uno xây dựng với phân nhân vi điều khiển ATmega328P sử dụng thạch anh có chu kì dao động 16 MHz Với vi điều khiển này, ta có tổng cộng 14 pin (ngõ) / vào đánh số từ tới 13 (trong có pin PWM, đánh dấu ~ trước mã số pin) Song song đó, ta có thêm pin nhận tín hiệu analog đánh kí hiệu từ A0 - A5, pin sử dụng pin / vào bình thường (như pin - 13) Ở pin đề cập, pin 13 pin đặc biệt nối trực tiếp với LED trạng thái board Trên board có nút reset, ngõ kết nối với máy tính qua cổng USB ngõ cấp nguồn sử dụng jack 2.1mm lấy lượng trực tiếp từ AC-DC adapter hay thông qua ắc-quy nguồn 2.2.4 Sơ đồ ngun lý hệ thống Hình 2.2.4 Mơ đo thơng số nhiệt độ ánh sáng Proteus Hình 2.2.4 Giao diện hiển thị thông số nhiệt độ ánh sáng Visual Studio *Nguyên lý làm việc : Trên giao diện hệ thống người sử dụng đo thông số độ ẩm, ánh sáng gửi Chọn cổng COM, Baud Rate, Data, Stop Paraty tương ứng với mạch nguyên lý Khi nhấn kết nối cổng COM, liệu từ Arduino thông qua cổng COM truyền gửi lên Visual liệu Độ Ẩm Ánh Sáng đo Hơn nữa, hiển thị thông số lên biểu đồ dạng sóng 2.2.5 Sơ đồ mạch in Hình 2.2.5 Sơ đồ mạch in 2.3 Thiết kế giao diện Những đối tượng sử dụng để thiết kế giao diện : - Các label để hiển thị : COM, Baud Rate, Data, Stop, Paraty, Nhiệt Độ , Ánh Sáng, Mã, Thời Gian, Địa Điểm, lbtime • - Các nút bấm button sử dụng : Connect, Disconnect, Xóa CSDL, Xác Nhận - Textbox sử dụng để hiển thị Mã ,Thời Gian, Nhiệt Độ, Ánh Sáng, Địa Điểm - Combobox sử dụng : cbbcom, cbbbaud, cbbdata, cbbstop, cbbparaty - Datagridview sử dụng để hiển thị bảng liệu CSDL - Ngoài sử dụng timer 2.4 Lưu đồ thuật tốn Arduino CHƯƠNG KẾT QUẢ 3.1 Hướng dấn Sử dụng : - Bước 1: kết nối arduino với máy tính Bước 2: Mở phần mềm - Bước 3: Lựa chọn cổng COM, tốc độ Baud, Data , Stop, Paraty Sau chọn , ta ấn “Kết nối ” để thức kết nối với Arduino - Bước 4: Thực đo giá trị nhiệt độ, ánh sáng Giá trị đo từ cảm biến hiển thị lên textbox biểu đồ lưu vào sở liệu Bước 5: Xóa liệu ngắt kết nối Chọn giá trị cần xóa ấn " Xóa CSDL " ấn " Xác Nhận " Sau xóa xong ta ấn " Disconnect " để kết thúc PHỤ LỤC using using using using using using using using using using using using using System; System.Collections.Generic; System.ComponentModel; System.Data; System.Drawing; System.Linq; System.Text; System.Threading.Tasks; System.Windows.Forms; System.Data.SqlClient; System.IO; System.IO.Ports; System.Xml; namespace detai2 { public partial class Form1 : Form { float[] arr = { 0, 0, 0, 0, 0, 0, 0, 0, 0, }; float[] arr1 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, }; SerialPort port = new SerialPort(); //khai báo cổng nối tiếp string indata = string.Empty; // khai báo biến indata để chứa kiệu SqlConnection conn = new SqlConnection(@"Data Source=WINET05901LS6D\SQLEXPRESS;Initial Catalog=detai;Integrated Security=True"); // khởi tạo đối tượng delegate void SetTextCallback(string text); // khai báo delegate SetTextCallBack với tham số string public Form1() { InitializeComponent(); this.port.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(this.DataReceived); string[] ports = SerialPort.GetPortNames(); // mảng port chứa cổng com máy tính cbbcom.Items.AddRange(ports); // thêm cổng com vào cbbcom string[] baud = { "1200", "2400", "4800", "9600", "19200", "38400", "57600", "115200" }; // thêm mảng chứa tốc độ baud cbbbaud.Items.AddRange(baud); // thêm tốc độ baud vào combobox baud rate string[] data = { "7", "8", "9" }; // thêm mảng chứa data cbbdata.Items.AddRange(data); // thêm data vào cbbdata string[] stop = { "1", "1.5", "2" }; // thêm mảng chứa stop cbbstop.Items.AddRange(stop); // thêm biến stop vào cbbstop string[] paraty = { "none", "old", "even" }; // thêm mảng chứa paraty cbbparaty.Items.AddRange(paraty); // thêm paraty vào cbbparaty } private void hienthi() // hàm hiển thị { conn.Open(); // mở cổng com string hienthi = "select * from detai2"; // cho phép chọn liệu cần thiết từ cột SqlDataAdapter data = new SqlDataAdapter(hienthi, conn); // khai báo khởi tạo đối tượng DataAdapter DataTable dt = new DataTable(); // khởi tạo DataTable data.Fill(dt); // điền liệu vào đối tượng đt dataGridView1.DataSource = dt; // lấy liệu từ đối tượng đt để truyền vào dataGridView1 //chart1.DataSource = dt; //chart1.Series["Nhiệt Độ"].YValueMembers = "nhietdo"; //chart1.Series["Ánh Sáng"].YValueMembers = "anhsang"; //chart1.Series["Nhiệt Độ"].Points.ResumeUpdates(); //chart1.Series["Ánh Sáng"].Points.ResumeUpdates(); conn.Close(); } private void them(string nhietdo, string anhsang) // hàm thêm để tự động thêm liệu truyền vào dataGridView1 { conn.Open(); // mở cổng com string them = "them"; // khai báo biến thêm SqlCommand sql = new SqlCommand(them, conn); // khởi tạo truyền phát liệu thêm vào đối tượng SqlCommand sql.CommandType = CommandType.StoredProcedure; sql.Parameters.Add(new SqlParameter("m", SqlDbType.Char)).Value = DateTime.Now.ToString("MMHHmmss"); sql.Parameters.Add(new SqlParameter("tgian", SqlDbType.DateTime)).Value = DateTime.Now; sql.Parameters.Add(new SqlParameter("nhiet", SqlDbType.NVarChar)).Value = nhietdo; sql.Parameters.Add(new SqlParameter("sang", SqlDbType.NVarChar)).Value = anhsang; sql.Parameters.Add(new SqlParameter("dia", SqlDbType.NVarChar)).Value = "Thái Nguyên"; sql.ExecuteNonQuery(); conn.Close(); lbnhietdo.Text = nhietdo; lbanhsang.Text = anhsang; hienthi(); } private void cbcom_SelectedIndexChanged(object sender, EventArgs e) { if (port.IsOpen) port.Close(); port.PortName = cbbcom.SelectedItem.ToString(); } private void cbbaud_SelectedIndexChanged(object sender, EventArgs e) { if (port.IsOpen) port.Close(); port.BaudRate = Convert.ToInt32(cbbbaud.Text); } private void cbdata_SelectedIndexChanged(object sender, EventArgs e) { if (port.IsOpen) port.Close(); port.DataBits = Convert.ToInt32(cbbdata.Text); } private void cbstop_SelectedIndexChanged(object sender, EventArgs e) { if (port.IsOpen) port.Close(); switch (cbbstop.SelectedIndex.ToString()) { case "1": port.StopBits = StopBits.One; break; case "1.5": port.StopBits = StopBits.OnePointFive; break; case "2": port.StopBits = StopBits.Two; break; } } private void cbparaty_SelectedIndexChanged(object sender, EventArgs e) { if (port.IsOpen) port.Close(); switch (cbbstop.SelectedIndex.ToString()) { case "none": port.Parity = Parity.None; break; case "1.5": port.Parity = Parity.Odd; break; case "2": port.Parity = Parity.Even; break; } } private void btconnect_Click(object sender, EventArgs e) { try { port.PortName = cbbcom.Text; port.Open(); btdisconnect.Enabled = true; btconnect.Enabled = false; MessageBox.Show("Kết nối thành công!"); } catch (Exception) { MessageBox.Show("Lỗi không kết nối được", "Thử lại", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void btdisconnect_Click(object sender, EventArgs e) { port.Close(); btdisconnect.Enabled = false; btconnect.Enabled = true; MessageBox.Show("Ðã Ngắt Kết Nối"); } private void Form1_Load(object sender, EventArgs e) { cbbcom.DataSource = SerialPort.GetPortNames(); cbbbaud.SelectedIndex = 3; Control.CheckForIllegalCrossThreadCalls = false; this.port.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(this.DataReceived); Control.CheckForIllegalCrossThreadCalls = false; cbbbaud.SelectedIndex = 3; cbbdata.SelectedIndex = 1; cbbstop.SelectedIndex = 0; cbbparaty.SelectedIndex = 0; chart1.ChartAreas[0].AxisX.Minimum = 0; chart1.ChartAreas[0].AxisX.Interval = 1; chart1.ChartAreas[0].AxisX.Maximum = 5; chart1.ChartAreas[0].AxisY.Minimum = 0; hienthi(); loadtext(); btxoacsdl.Enabled = true; btnxacnhan.Enabled = false; } int Index = 0; int Index1 = 0; int[] data = { 0, 0, 0, 0, 0, 0, 0, 0, 0, }; private void DataReceived(object sender, SerialDataReceivedEventArgs e) { string indata = port.ReadLine(); if (indata != string.Empty && indata != null) { setdata(indata); } } private void Chart(string nhiet,string sang) { arr[0] = float.Parse(nhiet); if (Index = 1; i ) { data[i] = data[i - 1]; } BeginInvoke(new Action (() => { chart1.Series["Nhiệt Độ"].YValueMembers = nhiet; chart1.Series["Nhiệt Độ"].Points.DataBindY(arr); chart1.Series["Nhiệt Độ"].Points.ResumeUpdates(); chart1.Series["Nhiệt Độ"].LegendText = "NHIỆT ĐỘ:" + nhiet + " 'C"; })); arr1[0] = float.Parse(sang); if (Index1 = 1; i ) { data[i] = data[i - 1]; } BeginInvoke(new Action (() => { chart1.Series["Nhiệt Độ"].XValueMember = sang; chart1.Series["Ánh Sáng"].Points.DataBindY(arr1); chart1.Series["Ánh Sáng"].Points.ResumeUpdates(); chart1.Series["Ánh Sáng"].LegendText = "ÁNH SÁNG:" + sang + " Lux"; })); } private void setdata(string data) { if (this.InvokeRequired) { SetTextCallback dt = new SetTextCallback(setdata); this.Invoke(dt, new object[] { data}); } else { int start; int end; string nhietdo, anhsang; start = data.IndexOf("#"); end = data.IndexOf("$"); nhietdo = data.Substring(start + 1, end - start - 1); start = end; end = data.IndexOf("&"); anhsang = data.Substring(start + 1, end - start - 1); them(nhietdo,anhsang); Chart(nhietdo,anhsang); } } private void loadtext() { txbanhsang.DataBindings.Clear(); txbanhsang.DataBindings.Add("Text",dataGridView1.DataSource,"anhsang"); txbma DataBindings.Clear(); txbma.DataBindings.Add("Text", dataGridView1.DataSource, "ma"); txbnhietdo.DataBindings.Clear(); txbnhietdo.DataBindings.Add("Text", dataGridView1.DataSource, "nhietdo"); txbthoigian.DataBindings.Clear(); txbthoigian.DataBindings.Add("Text", dataGridView1.DataSource, "thoigian"); txbdiadiem.DataBindings.Clear(); txbdiadiem.DataBindings.Add("Text", dataGridView1.DataSource, "diadiem"); } private void btnxacnhan_Click(object sender, EventArgs e) { conn.Open(); string xoa = "xoa"; SqlCommand sql = new SqlCommand(xoa, conn); sql.CommandType = CommandType.StoredProcedure; sql.Parameters.Add(new SqlParameter("ma", SqlDbType.Char)).Value = txbxoacsdl.Text; sql.ExecuteNonQuery(); conn.Close(); hienthi(); btxoacsdl.Enabled = true; btnxacnhan.Enabled = false; } private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { loadtext(); } private void btxoacsdl_Click(object sender, EventArgs e) { txbxoacsdl.DataBindings.Clear(); txbxoacsdl.DataBindings.Add("Text", dataGridView1.DataSource, "ma"); btxoacsdl.Enabled = false; btnxacnhan.Enabled = true; } private void timer1_Tick(object sender, EventArgs e) { lbtime.Text = DateTime.Now.ToString("dd-MM-yyyy\n HH:mm:ss"); } } } Code Aruidno : #include int BH1750address = 0x23; byte buff[2]; int adc = 0; float nhietdo = A0; void setup() { Wire.begin(); Serial.begin(9600); } void loop() { adc = analogRead(A0); nhietdo = adc*4.89/10; int i; uint16_t val=0; BH1750_Init (BH1750address); delay(200); if (2==BH1750_Read(BH1750address)) { val=((buff[0]

Ngày đăng: 29/06/2020, 00:07

HÌNH ẢNH LIÊN QUAN

Hình 1.1 Arduino Uno R3. - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
Hình 1.1 Arduino Uno R3 (Trang 1)
Hình 1.2 Sơ đồ các chân Arduino - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
Hình 1.2 Sơ đồ các chân Arduino (Trang 2)
Hình 1.2 Sơ đồ nguyên lý của Arduino - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
Hình 1.2 Sơ đồ nguyên lý của Arduino (Trang 3)
Thông số kỹ thuật của Arduino board được tóm tắt trong bảng sau: - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
h ông số kỹ thuật của Arduino board được tóm tắt trong bảng sau: (Trang 4)
Cổng kết nối ở đây là COM3. - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
ng kết nối ở đây là COM3 (Trang 7)
Bước 4: Cấu hình phiên làm việc cho Arduino IDE Vào menu Tools -> Board -> chọn Arduino UnoVào menu Tools -> Board -> chọn Arduino Uno - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
c 4: Cấu hình phiên làm việc cho Arduino IDE Vào menu Tools -> Board -> chọn Arduino UnoVào menu Tools -> Board -> chọn Arduino Uno (Trang 7)
Hình 2.2 Mạch nguyên lý khối xử lý trung tâm - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
Hình 2.2 Mạch nguyên lý khối xử lý trung tâm (Trang 18)
Hình 2.2.4 Mô phỏng đo thông số nhiệt độ và ánh sáng trên Proteus - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
Hình 2.2.4 Mô phỏng đo thông số nhiệt độ và ánh sáng trên Proteus (Trang 19)
Hình 2.2.4 Giao diện hiển thị thông số nhiệt độ ánh sáng trên Visual Studio - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
Hình 2.2.4 Giao diện hiển thị thông số nhiệt độ ánh sáng trên Visual Studio (Trang 19)
Hình 2.2.5 Sơ đồ mạch in 2.3 Thiết kế giao diện2.3 Thiết kế giao diện - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
Hình 2.2.5 Sơ đồ mạch in 2.3 Thiết kế giao diện2.3 Thiết kế giao diện (Trang 20)
Trên giao diện hệ thống người sử dụng có thể đo thông số độ ẩm, ánh sáng được gửi về. Chọn cổng COM,  Baud Rate, Data, Stop và Paraty tương ứng với mạch nguyên lý - Xây dựng giao diện hiển thị và cơ sở dữ liệu cho hệ thống đo thông số nhiệt độ, ánh sáng
r ên giao diện hệ thống người sử dụng có thể đo thông số độ ẩm, ánh sáng được gửi về. Chọn cổng COM, Baud Rate, Data, Stop và Paraty tương ứng với mạch nguyên lý (Trang 20)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w