ที่มาและความเป็นมาของโครงงาน
เนื่องจากในปัจจุบันนี้ชุมชนของเรามีการรณรงค์ให้รู้จักอดออม หยอดเหรียญในกระปุกออมสินเกือบทุกครัวเรือนซึ่งในการหยอดเหรียญออมในกระปุกนั้นมีปัญหาหลายอย่างเช่น บางครั้งก็อยากรู้ยอดเงินในกระปุกออมสินที่หยอด บางครั้งก็นับแล้วลืมและในกระปุกออมสินบางชนิดใช้ได้เพียงครั้งเดียว
ดังนั้นจากปัญหาข้างต้นที่กล่าวมาจึงได้คิดหาวิธีแก้ปัญหานี้โดยการสร้าง กระปุกออมสินนับเงินอัตโนมัติ ขึ้นมาโดยกระปุกออมสินนี้สามารถ นับจำนวนเงินและบอกจำนวนเหรียญแต่ละชนิดที่หยอดลงไปในกระปุกได้ในขณะเดียวกันด้วย และเมื่อกระปุกออมสินเต็มยังสามารถนำเหรียญออกมา แล้ว reset ค่าเพื่อเริ่มใช้งานกระปุกออมสินใหม่อีกครั้ง
ในการสร้างโครงงานนี้ จะสามารถแก้ไขปัญหาต่างๆได้ไม่ว่าจะเป็น ปัญหาของการลืมยอดเงินในกระปุกอออมสิน ปัญหาของการใช้กระปุกออมสินได้ครั้งเดียว หรือไม่ว่าจะเป็นปัญหาของการอยากทราบยอดเงินในกระปุกออมสิน โครงงานนี้ก็สามารถแก้ปัญหานี้ได้
คุณสมบัติการทำงานของโครงงาน
- สามารถนับยอดเงินที่หยอดในกระปุกออมสินได้
- สามารถนับจำนวนเหรียญที่หยอดได้
- ใช้ได้กับเหรียญ 1 บาท เหรียญ 5 บาท และเหรียญ 10 บาท
- แสดงยอดเงินรวมและจำนวนเหรียญแต่ละชนิดผ่านจอ LCD
การต่อวงจรสำหรับนับเงินในกระปุกออมสินอัตโนมัติ
รูปที่ 2 วงจรที่สมบูรณ์
การต่อวงจรที่สมบูรณ์ของโครงงาน
เป็นการนำเซนเซอร์ก้ามปูมาใช้ในการนับเหรียญ และนับจำนวนเงิน โดยจะใช้เซนเซอร์ก้ามปูทั้งหมด 3 ตัวใช้ไฟเลี้ยง 5 V จำนวนเงินและจำนวนเหรียญที่นับได้จะแสดงผลบนจอ LCD โดยเซนเซอร์ตัวที่ 1 นำ Output ต่อเข้าที่ขา PA0 ทำหน้าที่ตรวจว่าเป็นเหรียญ 1 บาท หรือไม่ ถ้าเป็นก็นับจำนวนเงินเพิ่ม 1 บาท และนับจำนวนเหรียญ 1 บาท เพิ่มขึ้น 1 เหรียญ ส่วนเซนเซอร์ตัวที่ 2 นำ Output ต่อเข้าที่ขา PA1 ทำหน้าที่ตรวจว่าเป็นเหรียญ 5 บาท หรือไม่ ถ้าเป็นก็นับจำนวนเงินเพิ่ม 5 บาท และนับจำนวนเหรียญ 5 บาท เพิ่มขึ้น 1 เหรียญ ส่วนเซนเซอร์ตัวที่ 3 นำ Output ต่อเข้าที่ขา PA2 ทำหน้าที่ตรวจว่าเป็นเหรียญ 10 บาท หรือไม่ ถ้าเป็นก็นับจำนวนเงินเพิ่ม 10 บาท และนับจำนวนเหรียญ 10 บาท เพิ่มขึ้น 1 เหรียญ ส่วนสวิทซ์ Reset ต่อเข้าที่ขา PA3 ทำหน้าที่ Reset ค่าเมื่อเรานำเหรียญออกจากกระปุก แล้วเราก็จะกดสวิทซ์เพื่อทำการ Reset ค่าให้เริ่มนับใหม่เพื่อใช้ในครั้งต่อไปได้และส่วนประกอบของวงจรประกอบไปด้วย
- เซนเซอร์ก้ามปู 3 ตัว
- บอร์ด STM32F4Discovery
- จอ LCD แสดงผล
- Adapter DC 3.3 v และ 5 v
- สวิทซ์ reset
การออกแบบโครงงาน
1. การติดเซนเซอร์และทางเดินของเหรียญ สำหรับการติดเซนเซอร์และทางเดินของเหรียญนั้น ทางเดินของเหรียญนั้นจะต้องเอี้ยงพอที่เซนเซอร์จะสามารถค่าอ่านทัน จากการทดลองปรากฏว่าเซนเซอร์อ่านค่าทันที่มุมเอียง 35 องศา
2. การนับเหรียญ เซนเซอร์ตัวที่ 1 นั้นทุกเหรียญจะต้องผ่านทั้งหมด เซนเซอร์ตัวที่ 2 จะมีแค่เหรียญ 5 บาท กับเหรียญ 10 บาทผ่านเหรียญ 1 บาทจะไม่ผ่านและเซนเซอร์ตัวที่ 3 จะมีแค่เหรียญ 10 บาทเท่านั้นที่ผ่านเหรียญ 5 บาทและเหรียญ 1 บาทจะไม่ผ่าน การนับค่านั้นจะถูกกำหนดไว้ว่า ถ้าผ่านเซนเซอร์ตัวที่ 1 โปรแกรมจะสั่งให้นับเพิ่ม 1 บาท ถ้าผ่านเซนเซอร์ตัวที่ 2 โปรแกรมจะสั่งให้นับเพิ่ม 4 บาท และถ้าผ่านเซนเซอร์ตัวที่ 3 โปรแกรมจะสั่งให้นับเพิ่ม 5 บาท
ตัวอย่างการนับเหรียญ
– นับเหรียญ 1 บาทความสูงของเหรียญ 1 บาทจะผ่านแค่เซนเซอร์ตัวที่ 1 แต่จะไม่ผ่านเซนเซอร์ตัวที่ 2 และตัวที่ 3 ดั้งนั้นจากข้างต้นผลรวมของเงินจะถูกนับเพิ่ม 1 บาท
– นับเหรียญ 5 บาทความสูงของเหรียญ 5 บาทจะผ่านเซนเซอร์ตัวที่ 1และ เซนเซอร์ตัวที่ 2 แต่ไม่ผ่านเซนเซอร์ตัวที่ 3 ดั้งนั้นจากข้างต้นผลรวมของเงินจะถูกนับเพิ่ม 1 บาท + 4 บาท เท่ากับ 5 บาท
– นับเหรียญ 10 บาทความสูงของเหรียญ 10 บาทจะผ่านเซนเซอร์ตัวที่ 1 เซนเซอร์ตัวที่ 2 และเซนเซอร์ตัวที่ 3 ดั้งนั้นจากข้างต้นผลรวมของเงินจะถูกนับเพิ่ม 1 บาท + 4 บาท + 5 บาท เท่ากับ 10 บาท
หลักการทำงานของโครงงาน กระปุกออมสินนับเงินอัตโนมัติ
เมื่อจ่ายไฟให้วงจรเริ่มทำงานเมื่อหยอดเหรียญ 1 บาท 5 บาท หรือ 10 บาทแล้วนั้น เหรียญแต่ละชนิดจะวิ่งผ่านเซนเซอร์ต่างกันตามที่กล่าวมาข้างต้นจากนั้น โปรแกรมจะทำการรวมยอดเงินที่บวกเพิ่ม แสดงผ่านจอ LCD ว่าขณะนั้นได้มีเงินในกระปุกออมสินเท่าไร เหรียญแต่ละชนิดกี่เหรียญ และเมื่อกระปุมออมสินเต็มก็สามารถนำเงินออกมาแล้วกดปุ่ม reset ค่าเพื่อเริ่มใช้งานกระปุกออมสินใหม่อีกครั้ง
การนำ กระปุกออมสินนับเงินอัตโนมัติ ไปใช้งาน
1. เสียบปลั๊ก Adapter dc 3.3 v และ 5 v
2. หยอดเหรียญตรงช่องหยอดเหรียญ
3. ผลรวมยอดเงินและจำนวนของเหรียญชนิดต่างๆแสดงออกทางจอ LCD
4. เมื่อเหรียญเต็มให้ดึงที่จับด้านส่งออกเพื่อนำเงินที่หยอดไว้ออกไปใช้ได้
5. กดปุ่ม reset ค่าเพื่อเริ่มใช้งานกระปุกออมสินใหม่อีกครั้ง
โปรแกรม Simulink ที่สมบูรณ์ของโครงงาน
รูปที่ 3 โปรแกรม Simulink ของโครงงานกระปุกออมสินนับเงินอัตโนมัติ
โปรแกรม Simulink ที่ใช้ทั้งหมดในโครงงาน
1. Target Setup – เพื่อเป็นการกำหนดว่าเราใช้บอร์ด Waijung blockset 13.07a บอร์ดไมโครคอนโทรลเลอร์ STM32F4
2. Character LCD Setup – เป็นการตั้งค่าเลือกใช้จอ LCD เพื่อใช้ในการแสดงผล
3. Volatile Data Storage – เป็นการประกาศค่าตัวแปรเพื่อเก็บค่าลงในไมโครคอนโทรลเลอร์ เป็นตัวแปรชนิด(int32)
4. Volatile Data Storage – เป็นการประกาศค่าตัวแปรเพื่อเก็บค่าลงในไมโครคอนโทรลเลอร์ เป็นตัวแปรชนิด(string) เพื่อนำไปแสดงผลที่จอ LCD
5. Volatile Data Storage Write – เป็นการเขียนค่าตัวแปรเพื่อนำค่าที่ออกมาจาก MATLAB Functions ไปเก็บไว้ที่ Block Volatile Data Storage ตามตัวแปรที่เราได้ประกาศไว้
6. Volatile Data Storage Read – ทำหน้าที่อ่านค่าที่เราเขียนไว้ใน Block Volatile Data Storage Write
7. Printf – เป็น Block ที่นำค่าที่ได้จาก Block Volatile Data Storage Read ไปแสดงผลบนหน้าจอ LCD
8. Character LCD Write – เป็นการตั้งค่าการแสดงผลของจอ LCD ตรง Port cmd จะเป็นการตั้งให้เคลียร์ค่าก่อนแสดงผลหรือป่าวถ้าเป็น 1 ให้เคลียร์ ถ้าเป็น 0 ไม่เคลียร์ ตรง Port xpos คือ ให้เริ่มต้นแสดงผลในตำแหน่งไหนในแนวแกน x ตรง Port ypos คือให้เริ่มต้นแสดงผลในตำแหน่งไหนในแนวแกน y ส่วน Port str คือค่าที่เราจะแสดงผลบนจอ LCD
9. Digital Input – ทำหน้าที่เพื่อรับค่าจากเซนเซอร์และสวิทซ์แล้วนำไปเข้าที่ Block MATLAB Functions เพื่อนำค่าที่ได้ไปประมวลผลว่าเป็นเหรียญชนิดใด
10. MATLAB Functions
MATLAB Functions ใช้สำหรับเขียนโค๊ดโปรแกรมนับยอดเงินรวมในกระปุกออมสินและนับจำนวนเหรียญ 1 บาท เหรียญ 5 บาท และเหรียญ 10 บาท ส่วนโค๊ดใน MATLAB Functions จะเป็นแบบ m-file โค๊ด ส่วน m-fileโค๊ดในแต่ละ Block ใน MATLAB Functions นั้นเราจะแยกอธิบายในแต่ละ Block หลังจากนี้ คือ
m-file โค๊ด ใน MATLAB Functions Block ที่ 1 (นับยอดเงินรวม)
m-file โค๊ด ใน MATLAB Functions Block ที่ 2 (นับจำนวนเหรียญ 1 บาท)
m-file โค๊ด ใน MATLAB Functions Block ที่ 3 (นับจำนวนเหรียญ 5 บาท)
m-file โค๊ด ใน MATLAB Functions Block ที่ 4 (นับจำนวนเหรียญ 10 บาท)
สรุปผลการทำงานของโครงงาน กระปุกออมสินนับเงินอัตโนมัติ
กระปุกออมสินนับเงินอัตโนมัตินี้ สามมารถนับเงินเหรียญ 1 บาท, 5 บาท, 10 บาทที่หยอดในกระปุกออมสินได้ โดยจะแสดงยอดเงินรวม อีกทั้งยังบอกจำนวนเหรียญแต่ละชนิดผ่านจอ LCD และเมื่อเหรียญเต็มก็สามารถนำเหรียญออกแล้ว reset ค่าเพื่อเริ่มใช้งานกระปุกออมสินใหม่ได้อีกครั้ง แต่กระปุกออมสินนี้ไม่สามารถนับเหรียญ 2 บาทได้