Dựa vào các định luật về chất khí đã nói ở trên, ta có thể tìm ra quy luật biến đổi của ba thông số trạng thái : áp suất p, thể tích V, nhiệt độ T của một lượng khí lí tưởng đã cho trong 3 quá trình bất kì. Show p * V / T = hằng số Phương trình trên được gọi là phương trình trạng thái của khí. Hằng số bên vế phải tùy thuộc vào lượng khí đang xét. Tức là cùng một lượng khí bất kì, ở bất kì trạng thái nhiệt độ, thể tích, áp suất nào thì kết quả của phép tính p.V/T vẫn luôn là một hằng số không đổi. Tuy nhiên, đối với khí thực, kết quả trên chỉ gần đúng. Theo phương trình Clayperon-Mendeleev thì phương trình trạng thái được viết lại là : p * V = n * R * T Với: n là số mol của lượng khí đang xét R là hằng số (xấp xỉ 8,31 nếu áp suất ở đơn vị Pascal; 0,082 nếu áp suất ở đơn vị atm) Bằng cách lắp đặt các module cảm biến đo nhiệt độ, thể tích, áp suất trong một xy lanh kín khí có thể thay đổi thể tích, ta có thể tìm được hằng số trong phương trình trạng thái ở từng trạng thái khác nhau của khối khí trong xylanh (vì khi thể tích thay đổi thì nhiệt độ, áp suất cũng thay đổi theo). Từ đó cho thấy hằng số này thay đổi không đáng kể qua các trạng thái khác nhau của khí. 2. Lý do chọn đề tàiViệc ứng dụng lý thuyết toán học, hóa học, vật lý,...vào thực tiễn là nền tảng để phát triển bền vững khoa học kĩ thuật. Trong chương trình chuyên lý 10, học phần nhiệt học nói về các định luật của chất khí. Bộ thí nghiệm mà Bộ Giáo dục cung cấp cho các trường THPT hiện chỉ mới khảo sát được gần đúng của quá trình đẳng nhiệt. Nói là gần đúng bởi vì khi nén hoặc dãn khí thì nhiệt độ của khí sẽ thay đổi nhẹ chứ không hoàn toàn đúng là quá trình đẳng nhiệt. Bên cạnh đó bộ thí nghiệm này chỉ mang tính định tính vì độ chia lớn, không khảo sát được quá trình biến thiên nhỏ của các giá trị đo. Với mong muốn vận dụng các kiến thức đã học về Kĩ thuật - Tin học vào thực hành tại trường THPT, tạo hứng thú cho học sinh trong quá trình học tập. Vì vậy, nhóm học sinh lớp 10 Lý trường THPT chuyên Lê Quý Đôn, Khánh Hòa đã nghiên cứu và chế tạo thành công bộ dụng cụ: “Bộ thí nghiệm kiểm chứng định luật thực nghiệm của chất khí dành cho học sinh chuyên lý THPT”. Bộ thí nghiệm này do nhóm học sinh tự chế tạo. Điểm khác biệt của bộ dụng cụ này so với các bộ dụng cụ ở phòng thí nghiệm trường là hoàn chỉnh, có thể dùng để kiểm chứng phương trình trạng thái Clayperon-Mendeleep của khí lí tưởng, đặc biệt là có thể lưu, phân tích, thống kê và in kết quả của quá trình thí nghiệm trên máy tính ra file excel... một cách nhanh gọn chính xác và hiệu quả. 3. Mục đích nghiên cứu của dự án
4. Ý nghĩa thực tiễn của dự án
5. Đối tượng nghiên cứu
II. NỘI DUNGDự án gồm 2 phần chính: phần cứng và phần mềm. Phần cứng bao gồm phần cơ và phần điện tử 1. Phần cơĐối tượng của dự án là chất khí, vậy nên điều đầu tiên chúng ta cần có là một ống xylanh kín chứa khí và có thể thay đổi thể tích tùy ý. Ở đây mình dùng ống xylanh là ống nhựa PVC và 2 đầu được bịt bằng 2 đế bằng nhôm .Tại sao phải bằng nhôm mà không phải là chất liệu nào khác? Vì nhôm có thể bắt vít chắc chắn và đủ mềm để có thể khoan lỗ để luồn dây ra Còn giá của piston mình dùng giá của ống keo silicon vì nguyên lí của nó khá hay và đơn giản, khi mình thả ra thì piston sẽ được cố định rất chắc chắn, còn nếu các bạn tìm ra được cái nào khác cũng được miễn là đáp ứng được điều trên 2. Phần điện tửChắc chắn là không thể thiếu Arduino rồi :3 a. Arduino UNO R3Tiếp đến là các cảm biến sử dụng trong dự án b. HC-SR04 Ultrasonic SensorHC-SR04 hay còn gọi là cảm biến sóng siêu âm. Nguyên lí hoạt động của module này là phát sóng siêu âm, sóng truyền đi đập vào vật thể rồi dội lại, dựa vào thời gian sóng đi và về, đã có tốc độ truyền sóng, từ đó tính được khoảng cách giữa cảm biến với vật thể. Bằng cách cố định cảm biến này vào 1 bên đế, ta có thể đo được khoảng cách từ đế bên này đến piston, đã có tiết diện ống, ta tính được thể tích khối khí bên trong HC-SR04 kết nối với arduino bằng mạch khá đơn giản c. BMP180 Digital pressure sensorCảm biến này có thể đo được áp suất, nhiệt độ không khí và độ cao của điểm đo so với mực nước biển. Trong dự án, cảm biến này được đặt chung chỗ với HC-SR04 để đo nhiệt độ và áp suất của khối khi bên trong xylanh .Sơ dồ mạch 2 mạch này khá đơn giản nên các bạn có thể cùng lúc kết hợp nó với Arduino mà không cần dùng textboard đâu Mỗi cảm biến có 4 đầu dây ra nên mình khoan ở bên hông đế 2 lỗ, mỗi lỗ luồn 4 đầu dây của mỗi sensor sau đó dùng keo bít kín lỗ lạiCòn phần code mình sẽ nói sau ở mục phần mềm Như thế là tạm xong phần cứng rồi nhỉ sau đây là phần quan trọng nhất, và tốn nhiều thời gian, chất xám nhất của tụi mình :33. Phần mềmPhần mềm được lập trình bằng phần mềm Visual Studio 2008. Chức năng của phần mềm là điều khiển thí nghiệm, nhận các tín hiệu báo về, xử lý kết quả số liệu tính toán, hỗ trợ xây dựng báo cáo thực hành… theo một giao diện phần mềm thân thiện, đơn giản, gần gũi đối với tất cả các bạn học sinh. Nghiên cứu và tìm hiểu ngôn ngữ C# và Arduino để lập trình phần mềm sản phẩm cũng như tải code lên chíp Arduino. Code tải lên Arduino bao gồm tích hợp 2 thư viện hỗ trợ là “Adafruit Sensor” và “AdafruitBMP085 Unified”, 2 thư viện này có chức năng hỗ trợ chíp BMP180 trong quá trình thu nhận dữ liệu. Phần mềm “phương trình trạng thái” được code với ngôn ngữ C# có chức năng thay thế chức năng nhận dữ liệu từ Arduino (SerialPort), chuyển tiếp dữ liệu thành bảng và có chức năng in ra file Excel. Sơ đồ khối hoạt động của phần mềm Giao diện Visual Studio 2008 khi lập trình Link tải phần mềmhttp://upfile.vn/FkBCFkBtTdIg/phuongtrinhtrangthai-rar.html (mirror) Code Arduino: / Dùng thư viện của BMP085 / include <Wire.h>include "Adafruit_Sensor.h"include "Adafruit_BMP085_U.h"/ Khai báo biến cho sóng âm / const int trigPin = 8; const int echoPin = 7; float duration; int distance; float thetich; float v; /*/ float x = 0.0; float test; Adafruit_BMP085_Unified bmp = Adafruit_BMP085_Unified(10085);
void displaySensorDetails(void)
{
delay(500);
}
//
/ /
//
void setup(void)
{
/ Đầu nhận, đầu phát của sóng âm /
pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
pinMode(echoPin, INPUT); // Sets the echoPin as an Input
Serial.begin(9600);
Serial.println("Bat dau chay chuong trinh !"); Serial.println("");
/ Initialise the sensor /
if(!bmp.begin())
{ }
displaySensorDetails();
}
void loop(void)
{
sensors_event_t event;
bmp.getEvent(&event);
if (event.pressure)
{ digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance= int(duration/2/29.412);
thetich=distance*3.14*5*5;
// Prints the distance on the Serial Monitor
//Test biến
v = pow(float(thetich),-6.0);
Serial.print("V = ");
Serial.print(thetich);
Serial.println(" M3");
Serial.println(duration);
Serial.println(distance);
Serial.println(thetich);
Serial.println(test);
Serial.println(dok);
Serial.println(x);
x = (test v) / dok;
Serial.println(x);
Serial.print("Const = ");
Serial.println((test v) / dok);
Serial.println();
}
else
{ }
delay(1000);
}Bạn cần 2 thư viện là Adafruit_Sensor và Adafruit_BMP085_U để đoạn code trên hoạt động được. Code arduino của từng cảm biến thì trên mạng có đầy ý các bạn chỉ cần kết hợp 2 cái và cho nó tính thêm cái biến const = P.V/T nữa thôi nhớ chú ý đơn vị nhé.À quên code của toàn bộ dự án tụi mình đã tích hợp toàn bộ vào phần mềm rồi :3 các bạn chỉ cần tải phần mềm về, kết nối Arduino là dùng được, phần code Arduino chỉ để tham khảo thôi. |