งาน 17 โครงงานแสดงระดับน้ำผ่านโทรศัพท์มือถือ Android

Contact: +66 (0)86 246-2446 | help@aimagin.com



 






โครงงานแสดงระดับน้ำผ่านโทรศัพท์มือถือ Android

May 23, 2015jijijung1 CommentKMUTNB – Mechatronics 57

ชื่อผู้ทำโครงงาน นางสาว รักชนก ใยลีอ่าง    TT2RA
รหัสประจำตัวนักศึกษา      5502013610081

Simulink model File(miniProject02_KMUTTNB57.7z)

ที่มาและความเป็นมาของโครงงานแสดงระดับน้ำผ่านโทรศัพท์มือถือ Android

ปัจจุบันเทคโนโลยีและนวัตกรรมต่างๆมีมากมายให้ได้ใช้งาน ไม่ว่าจะเป็นด้านเทคโนโลยีการสื่อสารที่มีผู้คนใช้งานเป็นจำนวณมากซึ่งก็คือโทรศัพท์มือถือ ระบบปฎิบัติการในการใช้งานของโทรศัพท์มือถือส่วนใหญ่ที่นำมาใช้นั้นก็คือ ระบบปฏิบัติการ Android จึงทำให้โทรศัพท์มือถือมีความสำคัญและทำให้การติดต่อสื่อสารนั้นง่ายและสะดวกยิ่งขึ้นและยังเป็นที่นิยมในการนำมาพัฒนาในรูปแบบของแอปพลิเคชั่นต่างๆ เพื่อให้ผู้ใช้สามารถนำไปใช้ให้ตรงกับความต้องการของตนเอง ดังนั้นจึงมีแนวคิดที่ว่าจะนำมาใช้กับสิ่งประดิษฐ์ที่รวมกับโทรศัพท์มือถือมาใช้ในการควบคุมการทำงานต่างๆ

จากแนวความคิดเหล่านี้รวมไปถึงนำโครงงานของรุ่นพี่มาพัฒนาต่อยอดเพิ่มขึ้นจากโครงงานควบคุมระดับน้ำให้กลายเป็นโครงงานแสดงระดับน้ำผ่านโทรศัพท์มือถือ Android  โดยหลักการทำงานคือให้โทรศัพท์มือถือ Android นั้นดูค่าระดับน้ำที่เราต้องการ พร้อมทั้งจะส่งสัญญาณเตือนเมื่อเกณฑ์ของระดับน้ำเกินค่าที่เรากำหนดโดยเป็นสัญญาณเสียงออกมา

คุณสมบัติการทำงานของโครงงาน

–  สามารถแสดงระดับน้ำผ่านโทรศัพท์มือถือในระบบปฏิบัติการ Android

–  การรับข้อมูลของระดับน้ำผ่านระบบไร้สายแบบ Bluetooth

–  แสดงผลบนมือถือและหน้าจอ LCD

–  ใส่ค่าระดับน้ำได้สูงสุด 25 เซนติเมตร

 

วงจรโดยรวมของโครงงานแสดงระดับน้ำผ่านโทรศัพท์มือถือ Android

 

 

ส่วนประกอบสาคัญภายในวงจร

ส่วนที่ 1 ขาที่ใช้ของบอร์ดSTM32F4 Discoveryนำอุปกรณ์มาต่อตามหมายเลขขาที่เราใช้งานโดยมีขาที่ใช้งานคือ PA3,PA5,PB1,PB15,PD8,PD9,PE5

ส่วนที่ 2 อุปกรณ์ในการแสดงสถานะ โดยจะใช้บัสเซอร์ บัสเซอร์จะเป็นตัวส่งสัญญาณเตือนเมื่อมีระดับน้ำที่เกิน

ลิมิตที่ตั้งไว้

ส่วนที่ 3 อุปกรณ์รับ-ส่งข้อมูลผ่านบลูทูธ โดยจะเป็นตัวรับข้อมูลจาก STM32F4 Discovery มาแสดงผลบนโทรศัพท์มือถือในระบบปฎิบัติการ Android โดยจะแสดงเป็นระดับที่ตั้งไว้และระดับที่วัดได้

ส่วนที่ 4 ตัวต้านทานปรับค่าได้ จะมีทั้งหมด 2 ตัวคือ

1.ตัวต้านทานสำหรับปรับแรงดันของ Sensor โดยการนำสัญญาณเซนเซอร์เข้าตัวต้านทานปรับค่าได้เพื่อลดแรงดันของเซนเซอร์สูงสุดไม่ให้เกิน 3.3V ก่อนต่อเข้าที่บอร์ดที่ขาPA3และนำสัญญาณ PWM จากขาPB15 เข้าชุดควบคุมระดับน้ำเพื่อควบคุมมอเตอร์ปั๊มน้ำในถัง

2.ตัวต้านทานสำหรับปรับระดับของน้ำโดยการนำสัญญาณจากขา PA5เข้าตัวต้านทานปรับค่าได้เพื่อ-ลดระดับน้ำตามความต้องการของผู้ใช้งาน

ส่วนประกอบวงจรประกอบไปด้วย

บอร์ด STM32F4 DISCOVERY


บอร์ดบลูทูธ HC-06


บอร์ดแหล่งจ่าย 5VDC


บอร์ด Buzzer


Pressure Sensor


มอเตอร์ปั๊มน้ำ


จอ LCD 16X4


โปรแกรม Simulink ที่สมบูรณ์ของโครงงานแสดงระดับน้ำผ่านโทรศัพท์มือถือ Android

ส่วนที่ 1

ประกอบด้วย

       – Target Setup ;เป็นการเรียกใช้เพื่อรองรับการใช้บอร์ด STM32F4 Discovery

– Character LCD Setup ;ใช้ในการตั้งค่าสำหรับจอแสดงผล LCD

– Volatile Data Storage ;เป็นการประกาศตัวแปรโดยเก็บไว้เป็นตัวแปร Line1 และ Line2

– UART Setup ;ใช้ในการตั้งค่า Port ในการสื่อสารโดยเป็นการรับ – ส่งข้อมูล

ส่วนที่ 2

ประกอบด้วย

       -Regular  ADC ; ใช้ในการรับค่าเซนเซอร์เข้ามาที่ขา PA3 และตัวต้านทานสำหรับเพิ่ม-ลดระดับน้ำต่อไปที่ขา PA5 ซึ่งเป็นสัญญาณAnalog

– Gain ; เป็นตัวแปลงค่าเป็นดิจิตอลโดยนำไปเทียบ100/4095แล้วนำเข้าMatlab functionเพื่อทำให้ค่าเซนเซอร์นั้นสูงสุดคือ100และต่ำสุดคือ0ซึ่งเนื่องจากเซนเซอร์มีค่าเริ่มต้นที่ไม่ใช่ 0จึงนำไปเทียบบัญญัติไตรยางศ์ให้ค่าสูงสุดที่ 100 และต่ำสุดที่0 แล้วนำทั้งสองค่าไปหารด้วย 4 เพื่อให้ได้ค่าสูงสุดคือ 25 และต่ำสุดที่ 0 จากนั้นนำค่าทั้งสองเปรียบเทียบกันโดยตั้งเงื่อนไขว่าถ้าค่าเซนเซอร์น้อยกว่าค่าระดับน้ำที่กำหนดให้ส่งสัญญาณ PWM ออกไป 100% และเมื่อน้ำเข้าในถังจนมีระดับที่ต้องการจะหยุดจ่ายสัญญาณ PWM

ส่วนที่ 3,4

ประกอบด้วย

       – String Buffer Progress ;เป็นการรับข้อมูลมาเก็บไว้ในตัวแปร Line1 และ Line2 เพื่อนำไปใช้แสดงผลบนจอ LCD

 ส่วนที่ 5

ประกอบด้วย

       – Volatile Data Storage Read ;เป็นตัวอ่านข้อมูลที่เก็บไว้ใน Line1 และ Line2

       – Character LCD Write ;เป็นตัวนำข้อมูลไปเขียนบนจอ LCD ในแต่ละบรรทัด

       – Constant ;เป็นการกำหนดในตัวอักษรหรือตัวเลขต่างๆโดย xpos,yposแสดงในตำแหน่งตามต้องการและcmdเป็นตัวกำหนดการนำค่านั้นค้างไว้หรือไม่

ส่วนที่ 6

 

ประกอบด้วย

       – Data type Conversion; เป็นการแปลงข้อมูล โดยข้อมูลที่รับมาจะเป็น double จึงต้องผ่านการแปลงให้เป็น Single เพื่อที่จะทำให้ชนิดข้อมูลให้เหมือนกันจึงสามารถใช้งานได้ในการแสดงผลบนโทรศัพท์มือถือ Android จะนำข้อมูลที่อยู่ในวงกลมสีแดงตามภาพ

 

การเขียนโค๊ด M-File

อธิบายโค๊ด

function y = fcn(u) //เป็นการประกาศให้ฟังค์ชั่น y เป็น output และ u เป็น input

y = (35-u)*1.538461538; //เป็นการเปรียบเทียบบัญญัติไตรยางศ์ ให้เซ็นเซอร์มีค่าตั้งแต่ 0-100

 

อธิบายโค๊ด

function y = fcn(u)   //เป็นการประกาศให้ฟังค์ชั่น y เป็น output และ u เป็น input

y = u/4;                 //นำค่า u ไปหาร 4 เพื่อให้ได้ค่าตั้งแต่ 0-25 Cm

อธิบายโค๊ด

function y = fcn(u))   //เป็นการประกาศให้ฟังค์ชั่น y เป็น output และ u เป็น input

y = u/4;                    //นำค่า u ไปหาร 4 เพื่อให้ได้ค่าตั้งแต่ 0-25 Cm

อธิบายโค๊ด

function y = fcn(u,x)  //เป็นการประกาศให้ฟังค์ชั่น y เป็น output และ u,xเป็น input

if (u>x)                    //เงื่อนไขถ้าค่า u (Sensor) มีค่าน้อยกว่ำ x (ค่าระดับน้ำที่กำหนด)

y = 100;              //ให้ y= 100

else                       //ถ้าไม่จริง

y = 0;                // ให้ y =0

อธิบายโค๊ด

function y = fcn(u,x)  //เป็นการประกาศให้ฟังค์ชั่น y เป็น output และ u.xเป็น input

if (u>x)                    //เงื่อนไขถ้าค่ำ u (Sensor) มีค่าน้อยกว่ำ x (ค่าระดับน้ำที่กำหนด)

y = 1;                 //ให้ y= 100

else                       //ถ้าไม่จริง

y = 0;                // ให้ y =0

อธิบายโค๊ด

function y = fcn(u,x)  //เป็นการประกาศให้ฟังค์ชั่น y เป็น output และ u,xเป็น input

if (u<x)                    //เงื่อนไขถ้าค่า u (Sensor) มีค่าน้อยกว่ำ x (ค่าระดับน้ำที่กำหนด)

y = 100;               //ให้ y= 100

else                       //ถ้าไม่จริง

y = 0;                // ให้ y =0

 

หลักการทำงานของโครงงาน

     1.นำแหล่งจ่าย 12VDC ต่อเข้าบอร์ดแปลงแหล่งจ่าย โดยจะแปลงแหล่งจ่ายจาก 12VDC เป็น 5VDC แล้วทำการเปิด Switch เพื่อทำการเปิดใช้งาน

     2.นำบลูทูธและBuzzer มาต่อเข้า Socket ในการนำไปใช้งาน

      3.นำเซนเซอร์ มาต่อเข้าที่ช่อง Sensor แล้วทำการ Calibrate Sensor แรงดันที่ทำให้วัดระดับน้ำได้สูงสุด 25 Cm และนำสัญญาณ PWM ไปใช้งานในการขับมอเตอร์ปั๊มน้ำ

     4.ทำการเชื่อมต่อบลูทูธในการดูค่าระดับน้ำบนมือถือ

 

     5.ปรับตัวต้านทานปรับค่าได้ให้ได้ระดับน้ำตามที่เราต้องการ

     6.จากนั้นทำการกด Switch เพื่อทำการจ่ายสัญญาณให้กับมอเตอร์เพื่อให้มอเตอร์ปั๊มน้ำทำงาน

 

ผลจากการทดลองปรับค่าระดับน้ำ

 

สรุปผลการทดลอง

เมื่อทำการปรับตัวต้านทานปรับค่าได้ที่ใช้ในการปรับค่าระดับน้ำนั้นแล้ว ทำการกดปุ่มเพื่อทำการจ่ายสัญญาณ PWM เพื่อให้มอเตอร์ทำการปั๊มน้ำขึ้นมา จากนั้นระดับน้ำก็จะนำน้ำเข้ามาและรักษาระดับให้มีค่าให้มีค่าใกล้เคียงกันกับระดับน้ำที่ตั้งเอาไว้ และนำค่าที่ได้นำมาแสดงบนโทรศัพท์มือถือว่ามีระดับน้ำที่เท่าใด และเมื่อทำการลดระดับน้ำลง น้ำก็จะรักษาระดับให้ได้ตามที่ลดค่าลงมาพร้อมทั้งแสดงผลบนโทรศัพท์มือถือด้วยเช่นกัน

 

ลิงค์วิดีโอ http://www.youtube.com/watch?v=ub119PnA46U&feature=youtu.be

 

 

 

Response (1)

IIIIII

July 17, 2015 at 9:00 AM · Reply

ที่เเสดงในมือถือมันเป็น App หรอ ครับ


Leave a reply

Prev Post

Next Post

  ไทย



Categories

คำถามที่ถูกถามบ่อย

STM32F4 Target FAQ


Waijung FAQ


เรื่องอื่นๆ


บทเรียน

การเฝ้าตรวจและควบคุมผ่านเครือข่าย


บทเรียนเกี่ยวกับ Waijung & STM32F4


ระบบควบคุมอัตโนมัติ


เรื่องอื่่นๆ


มาปลูกต้นไม้กัน

Hydropronics


Semi-Hydroponics


โปรเจคตัวอย่าง

KMUTNB – Mechatronics 56


KMUTNB – Mechatronics 57


การเกษตร


Recent Posts

ติดตั้งระบบรดน้ำอัตโนมัติที่บ้านลูกค้า (คุณโม) March 12, 2017


ติดตั้งระบบรดน้ำอัตโนมัติที่บ้านลูกค้า (คุณอ้อม)March 9, 2017


Note that Aimagin does not guarantee or warrant the use or content of Aimagin Blog submissions. Any questions, issues, or complaints should be directed to the contributing author.



 


ความคิดเห็น

บทความที่ได้รับความนิยม