Page 1
โครงงานทางวศวกรรมเมคคาทรอนกส
เรอง การปรบปรงประสทธภาพเครองจายชดพนกงานอตโนมต
(Performance improvement uniform vending machine)
ชอผจดท าโดย นายสณหพล มาศรกษา B5926565
นายปฏภาณ แกนจนทร B5923663
นายวรวฒน ศรโท B5929146
โครงงานนเปนสวนหนงของการศกษาตามหลกสตรปรญญาวศวกรรมศาสตร
บณฑต สาขาวชาวศวกรรมเมคคาทรอนกส ส านกวชาวศวกรรมศาสตร
มหาวทยาลยเทคโนโลยสรนาร ปการศกษา 2/2562
kl
โครงงานนเปนสวนหนงของการศกษาตามหลกสตรวศวกรรมศาสตรบณฑตสาขาวชาวศวกรรมเมคคาทรอนกส สำนกวชาวศวกรรมศาสตรมหาวทยาลยเทคโนโลยสรนาร ปการศกษา 2/2562
Page 2
ก
เกยวกบโครงงาน
บทคดยอ
โครงงานนไดศกษาและเครองจายชดพนกงานอตโนมตทมโครงงานอยแลวมาพฒนาและ
ปรบปรงใหม จดท าขนมาเพอแกปรบปรงแกไขปญหาและปรบปรงเพมเตมเรองสวนทขาดหาย เชน
ถาดรองรบของ การก าหนดจ านวน รายละเอยดการแสดงผล ใหเหมาะสมใหมประสทธภาพดยงขน
เพอใชในงานในการจายแบบชดพนกงานอตโนมตในโรงงานอตสาหกรรมท าใหใชงานเวลาลดลง
เครองจายชดพนกงานอตโนมตจะไดรบการปรบปรงในเรองการก าหนดจ านวนชดและรายละเอยด
สามารถจ ากดจ านวนการจายชด รองเทา เปนจ านวน 1 ครง แสดงผลชอผถอบตรขนหนาจอได
และสามารถเรมตนใหมดวยการรเซตเพอเรมตนนบจ านวนใหม
Page 3
ข
About Project
Abstract
This project studies and pay a uniform automation projects have already been developed and
improved. Prepared to solve problems and improve further updates on the missing parts such as
the amount of output tray. Details Display The right to have a better performance. To do the job
in a series of paid employees in the industrial automation, deployment time is reduced. Uniform
dispenser will automatically be updated in the amount set and details.
You can limit the number of shoes is paid 1 times display card holder's name on the screen.
And can be restarted by resetting to start a new count.
Page 4
ค
1. ชอผจดท าโครงงาน
1) นายสณหพล มาศรกษา รหสประจ าตวนกศกษา B5926565
2) นายปฏภาณ แกนจนทร รหสประจ าตวนกศกษา B5923663
3) นายวรวฒน ศรโท รหสประจ าตวนกศกษา B5929146
2. ชอโครงงาน
(ภาษาไทย) การปรบปรงประสทธภาพเครองจายชดพนกงานอตโนมต
(ภาษาองกฤษ) Performance improvement uniform vending machine
สาขาวชาวศวกรรมเมคคาทรอนกส ส านกวชาวศวกรรมศาสตร
3. ทปรกษาโครงงาน
ทปรกษาโครงงานหลก : อาจารยโศรฎา แขงการ
สถานศกษา : มหาวทยาลยเทคโนโลยสรนาร
ปภาคการศกษา : 2/2562
Page 5
ง
กตตกรรมประกาศ
โครงงานนส าเรจลลวงไปไดดวยความกรณาและความชวยเหลออยางดยงจากทปรกษา
โครงงานอาจารย : อาจารยโศรฎา แขงการ ซงใหค าปรกษา ขอชแนะ ความชวยเหลอในหลายสง
หลายอยางจนกระทงลลวงไปไดดวยด ผท าโครงงานขอกราบขอบพระคณมา ณ ทน
ผจดท าจงขอกราบขอบพระคณไว ณ โอกาสน
สดทายนผจดท าหวงเปนอยางยงวาโครงงานนจะเปนประโยชนตอการศกษาของผทสนใจตอไป
สณหพล มาศรกษา
และคณะ
Page 6
จ
สารบญ
เรอง หนา
เกยวกบโครงงาน ก กตตกรรมประกาศ ง สารบญ จ
-สารบญตาราง ฉ -สารบญรปภาพ ช
บทท 1 บทน า -ทมาและความส าคญของโครงงาน 1 -วตถประสงค 3 -ขอบเขตของโครงงาน 3
-ประโยชนคาดวาจะไดรบ 3 บทท 2 ทฤษฎและเนอหาทเกยวของ 4 บทท 3 วธการด าเนนโครงงาน -ขนตอนด าเนนงาน 7 -อปกรณการด าเนนโครงงาน 9 -วธการจดท าโครงงาน 10 บทท 4 ผลการทดลองและวเคราะหผล 11
-ผลการทดลอง 14 บทท 5 สรปผลการทดลองและขอเสนอแนะ 15 -สรปผลการทดลองและขอเสนอแนะ 15 บรรณานกรม/เอกสารอางอง 16ภาคผนวก 17 -การตงคาโปรแกรม Arduino 22
-ประวตผจดท าโครงงาน 31
Page 7
ฉ
สารบญตาราง
ตาราง หนา
ตารางท 1 ตารางผลการทดลองและวเคราะห.............................................................................11 ตารางท 2 ตารางขอมลบตรจายชด………………………………………………………….....12 ตารางท 3 ตารางการทดสอบระบบเครอง..................................................................................12 ตารางท 4 ตารางทดสอบการตกของกลอง.................................................................................13 ตารางท 5 การตงคาโปรแกรม Arduino…………………………………………………..……22 ตารางท 6 การตงคาบตรใบท 1.................................................................................................25 ตารางท 7 การตงคาบตรใบท 2.................................................................................................26 ตารางท 8 การตงคาบตรใบท 3.................................................................................................27 ตารางท 9 การตงคาบตรใบท 4.................................................................................................28 ตารางท 10 การตงคาบตรใบท 5.................................................................................................29 ตารางท 11 การตงคาบตรใบท 6.................................................................................................30
Page 8
ช
สารบญรปภาพ
เรอง หนา
ภาพท 1.1 ตวอยางเครองจายสนคาอตโนมต…………………………………………….…........1 ภาพท 1.2 ตวอยางชดเครองแบบพนกงาน……………………………………………..………..2 ภาพท 2.1 Arduino MEGA 2560…………………………………………………….…..……....5 ภาพท 2.2 RFID RC522………………………………………………………………..………..5 ภาพท 2.3 TFT 3.5” LCD………………………………………………………………..………6 ภาพท 2.4 MG 996R Servo……………………………………………………………..……….6 ภาพท 3.1 โครงสรางออกแบบดวย Solidworks………………………………………..……….7 ภาพท 4.1 เปรยบเทยบเครอง........................................................................................................11 ภาพท 5.1 ดานหนาเครองจายชดพนกงาน...................................................................................17 ภาพท 5.2 ดานหลงเครองจายชดพนกงาน....................................................................................17 ภาพท 5.3 ชองหยบของเครองจายชดพนกงาน.............................................................................18 ภาพท 5.4 ชองเตมของเครองจายชดพนกงาน...............................................................................18
Page 9
1
บทท 1
บทน า
1.1 ทมาและความส าคญของโครงงาน
เนองจากในปจจบนตองการความสะดวกรวดเรวดานการท างาน มการแขงขนในเรองเวลา ตอง
น าเทคโนโลยเขามาชวยตอบสนองและอ านวยความสะดวกสบายในการท างาน โดยใชเปนระบบ
อตโนมตเปนทนยมในปจจบน ยกตวอยางเชน ตจ าหนายสนคาอตโนมต เครองหยอดเหรยญ
โทรศพท ตเกมส ตขายน าอดลม ตามตวอยางขางตนเปนระบบอตโนมตทพบเจอในชวตประจ าวน
จงไดแนวคดในการจดท าโครงงานเครองจายชดพนกงานอตโนมตเพอความสะดวก ประหยดเวลา
ลดการใชคน โดยตองการใหสามารถท างานไดโดยไมจ าเปนตองใชคน ท างานได 24 ชวโมง
ประหยดการจางแรงงานคน และเปนตนแบบในการใชงาน
รปท 1.1 ตวอยางเครองจายสนคาอตโนมต
( ทมา : https://www.smeleader.com/ตหยอดเหรยญ-108-vending/ )
Page 10
2
เหตผลส าคญทตองมชดพนกงาน นอกจากจะมการตลาดทดแลวการบรหารภายในตองดดวย โดยชดพนกงานเปนสวนหนงในปจจยนน โดยเฉพาะความเปนจดเดนของชดท าใหผคนภายนอกทพบเหนรวาเปนรปแบบชดของบรษทหรอโรงงานไหนสามารถเหนและกลายเปนทรจกและสงเกตไดงาย จงเปนประโยชนในการประกอบธรกจ
1) รสกความเปนหนงเดยวกนในบรษทหรอโรงงาน รสกกลายเปนกลมคนพวกเดยวกนไมเกดความแตกแยก คลายชดของ ต ารวจ ทหาร
2) เกดความเทาเทยมเสมอภาคกน รสกเกดความเทาเทยมเสมอภาคกน ไมมเรองราคาสงต าไมมการเปรยบเทยบชดราคาถกแพงกวากน
3) สามารถแบงจ าแนกไดงาย ยกตวอยางดวยการแบงจ าแนกดวยสชดพนกงานแตละแผนก วาชดนอยแผนกไหนท างานเกยวกบ
ประเภทอะไรโดยดจากสชดเปนตน
4) ความคลองตวในการท างาน เนองจากแตงชดถกประเภทของงานเชนใสเสอแขนสนกบงานชาง เสอแขนยาวกบงานตองการ
ความปลอดภย หรองานทอยในทรอนตองการเสอทเนอผาบางระบายความรอนไดด เสอทสามารถ
ทนไฟได หรอ สารเคมได เพอเหมาะกบประเภทของงานทใชชดวาตองการรปแบบไหน
รปท 1.2 ตวอยางชดเครองแบบพนกงาน
(ทมา : www.tpthaiuniform.com/16861771/เหตผลทองคกรจ าเปนตองมชดฟอรมพนกงาน )
Page 11
3
1.2 วตถประสงค 1. เพอศกษาและปรบปรงประสทธภาพเครองจายชดพนกงานอตโนมต
1.3 ขอบเขตของโครงงาน
1. แกปญหาการสนของตวเครอง 2. แกปญหาการจายของซ า (จ ากดสทธ 1คน ตอ1ครง ใน1วน) 3. เพมขนาดและรายละเอยดของจอแสดงผล 4. ปรบปรงรปแบบของเครองใหดระเอยดเรยบรอยและเพมสวนทขาดหาย
1.4 ประโยชนทคาดวาจะไดรบ
เครองจายชดพนกงานอตโนมตจะไดรบการปรบปรงเพมเตมประสทธภาพในการใชงาน
ดานการจายชดและก าหนดรายละเอยดชด การแสดงผลของจอมใหมรายละเอยดมากยงขน เพอให
ผใชสามารถใชงานไดอยางมประสทธภาพ ลดความเสยเวลาในการท างานและสะดวกรวดเรว
ประหยดเวลามากขน ลดการใชงานคน
Page 12
4
บทท 2 ทฤษฎและเนอหาทเกยวของ
2.1 ทฤษฎทเกยวของ
เครองจายชดพนกงานอตโนมต (uniform vending machine)
หลกการท างานของระบบ
โดยใช Arduino ควบคมในการท างานของระบบโดยเลอกใชบอรดรน Arduino MEGA 2560 โดย
ใชงานเครองอานบตรแตะ (RFID) | มทงแบบ 125KHz และ 13.56MHz โดยไดเลอกใชแบบ
13.56MHz ในการสงการท างานแสดงผลดวยจอ TFT 3.5" LCD module Display for Arduino
Mega2560 ท างานดวย servo motor รน MG996R Servo 360° Rotation ในการกระทบใหสงของตก
โดยมการควบคมก าหนดให 1 บตรสามารถใชจายของไดไมเกน 1 ครงสามารถเรมตนใหมดวยการ
กดปมรเซต
อปกรณหลกทใชควบคม
1.) Arduino MEGA 2560
2.) RFID 13.56MHz
3.) TFT 3.5" LCD module Display for Arduino Mega2560
4.) Servo Motor รน MG996R Servo 360° Rotation
Page 13
5
1) Arduino MEGA 2560
รปท 2.1 Arduino MEGA 2560
(ทมา: https://www.arduinoall.com/product/17/บอรด-arduino-รน-mega-2560-r3-พรอมสาย-usb)
ใชเขยนโปรแกรมเขยนโปรแกรมหลกควบคมการท างานหลกของระบบเพอควบคม
-RFID 13.56MHz
- TFT 3.5" LCD module Display for Arduino Mega2560
- Servo Motor รน MG996R Servo 360° Rotation
2.) RFID 13.56MHz
รปท 2.2 RFID RC522
(ทมา: https://www.arduinoall.com/product/102/rfid-card-reader-detector-module-kit-rc522-
พรอม-tag-card-และ-tag-พวงกญแจ)
ใชอานคาจากบตรของพนกงานแตละคนโดยทกคนจะมบตรประจ าตวของตนเองใชจายชดและ
รองเทาตามขอมลบตรทก าหนด
Page 14
6
3.) TFT 3.5" LCD module Display for Arduino Mega2560
รปท 2.3 TFT 3.5” LCD
(ทมา: https://www.arduinoall.com/product/1262/tft-3-5-lcd-module-display-for-arduino-
mega2560-จอ-lcd-3-5-tft-2)
ใชงานการแสดงผลชอพรอมต าแหนงของผถอบตรและแสดงผลค าสงการท างานรปแบบ
ตางๆของระบบขณะนน
5.) Servo Motor รน MG996R Servo 360° Rotation
รปท 2.4 MG996R Servo
(ทมา: https://www. arduitronics.com/ product/1980/tower-pro-mg996r-high-torque-แบบหมนได-
360-องศา)
เลอกใช Servo Motor MG996R แบบหมน 360 องศา ในการดนกลองของใหตกลงไปใชในชองรบ
ของโดยมการตงคาหมนทวนเขมเพอดนของใหตกหนวงเวลาไวและหมนตามเขมกลบยงจดเดม
Page 15
7
บทท 3 วธการด าเนนโครงงาน
3.1 ขนตอนการด าเนนงาน
การด าเนนการวจยตองศกษาขอมลและการท างานของเครองจายชดพนกงานและไดมาท าการพฒนาของโครงสรางระบบการจายของ จากนนท าการปรบปรงแกไขในสวนตาง ๆของตวเครองทขาดหายเพอน าผลมาวเคราะห สรป และประเมนผลไดอยางทคาดหวงไว
มการปรบปรงดงน
1) โครงสราง
ไดออกแบบจดท าโครงสรางขนมาใหมโดยออกแบบใหมขนาด 6 ชองใช servo motor ทงหมด 6 ตว
และเปลยนขนาดหนาจอขนมาเปน 3.5” และจดท ากลองเกบอปกรณมดชด
Page 16
8
รปท 3.1 โครงสรางออกแบบดวย Solidworks
2) โปรแกรม
ก าหนดให 1 บตรสามารถใชจายของไดไมเกน 1 ครงสามารถเรมตนใหมดวยการกดปมรเซต
3) ทดสอบการท างาน
ผลการทดสอบจากการท างานสามารถท างานไดตามขอบเขตทก าหนดคอสามรถสแกนบตรได
1 ครง/คน ตอ 1 วน และสามารถเรมตนใหมได
Page 17
9
2. อปกรณการด าเนนโครงงาน
1. บอรด Arduino Mega 2560 R3 2. RFID Card Reader 3. Detector Module 4. Step down 5. TFT 3.5” LCD module Display for Arduino Mega 2560 6. Power supply 24v 7. Servo motor MG996R 6ตว 8. แผนไมแขงหนา 1.5cm 9. แผนไมแขงหนา 0.5cm. 10. รางเกบสายไฟ
จากอปกรณขางตนทไดกลาวมาเปนอปกรณหลกทจ าเปนตองน าเขามาใชในการด าเนน เครองจายชดพนกงานอตโนมต
Page 18
10
วธการจดท าโครงงาน
การเลอกรปแบบของการท างานเพอสรางโครงสราง : ทางผจดท าเลอกใช Servo Motor
เปนตวหลกในการท างานของระบบเนองจากมความซบซอนไมมากนกและงายตอการควบคม
โดยโครงทงหมดท าจากไมเพอเพมประสทธภาพความแขงแรงของตวเครอง
การเลอกตวควบคม
ตวควบคมหลก : ผจดท าเลอกใชบอรด Arduino Mega 2560 R3 เนองจากความสะดวกใน
การเขยน Code เพราะมโปรแกรม Arduino รองรบและยงเปนทนยมกนอยางแพรหลาย
ตวควบคมรอง : ผจดท าเลอกใช Servo motor รวมกบ Step down เนองจากในโครงงานน
ตองใช Servo motor 6 ตว จงเลอกน า Step down เขามาชวยในการควบคมปรบคาไฟใหพอดกบท
ตองใชใน Servo motor แตละตว
ตวปอนค าสงขอมล : ผจดท าเลอกใช RFID เนองจากเปนตวควบคมสงงานการท างานของ
Motor ใหท างานตรงตามขอมลทตงคาไวตาม Tag แตละใบ เนองใน Tag แตละใบนนมขอมลไม
เหมอนกนซงเราองตามความเปนไปไดทจะเกดขน คอ ชด 3 ขนาด (ชดA,ชดB,ชดC)
และรองเทา 3 ขนาด (รองเทาA,รองเทาB,รองเทาC) จงไดความเปนไปไดทงหมด 9 รปแบบ แตทาง
ผจดท าไดเลอกออกมาเปนตวอยาง ทงหมด 6 รป แบบ
Page 19
11
บทท 4
ผลการทดลองและวเคราะหผล
ตารางท 1 ผลการทดลองและวเคราะห
โครงสรางเดม โครงสรางใหม
(รปท 4.1 เปรยบเทยบเครอง)
ระบบโปรแกรมเดม ระบบโปรแกรมใหม
ไมสามารถจ ากดจ านวนการจายชดได สามารถก าหนดจ านวนการจายชดไดท 1 ครงและสามรถกดรเซตเพอเรมใหมได
Page 20
12
ตารางท 2 ขอมลบตรจายชด
ตารางท 3 ทดสอบการท างานระบบเครอง
ครงท 1 ครงท 2 ครงท 3 ครงท 4 ครงท 5 RFID ✓ ✓ ✓ ✓ ✓
LCD ✓ ✓ ✓ X ✓
Servo Motor ✓ X ✓ X ✓
คาความผดพลาดการทดสอบ 5 ครง = 20%
มขอผดพลาดในการท างานคานในบางครงคอ LCD ไมแสดงผลการท างาน หรอ Servo Motor ไม
หมนตองแกไขปญหาดวยการรเซตบอรดเพอใหเรมตนการท างานใหม
ชด A ชด B ชด C
รองเทา A การด 1 การด 5 -
รองเทา B - การด 2 การด 6
รองเทา C การด 4 - การด 3
Page 21
13
ตารางท 4 ทดสอบการตกของกลอง
ครงท 1
การด 1 การด 2 การด 3 การด 4 การด 5 การด 6
ชด ✓ ✓ ✓ ✓ ✓ ✓
รองเทา ✓ X ✓ ✓ ✓ X
ครงท 2
การด 1 การด 2 การด 3 การด 4 การด 5 การด 6
ชด ✓ ✓ ✓ ✓ ✓ ✓
รองเทา ✓ ✓ ✓ ✓ ✓ ✓
ครงท 3
การด 1 การด 2 การด 3 การด 4 การด 5 การด 6
ชด ✓ ✓ x ✓ ✓ ✓
รองเทา x ✓ ✓ ✓ ✓ ✓
คาความผดพลาดในการทดสอบ 3 ครง = 8.33%
Page 22
14
ผลจากการทดสอบ
-เครองจายชดพนกงานอตโนมตมบตรทงหมดจ านวน 6 ใบสามารถท างานสงการจายของ
ตามตารางทก าหนดดานบนและสามารถจายได 1 ครงสามารถเรมใหมดวยการรเซต
-ในการท างานอาจเกดความผดพลาดในการจายชดคอไมไดวางของในต าแหนงไมตรงจดท
ก าหนดไวท าใหกลองไมตกลงไปชองรบของ
-ดานระบบการท างานบอรดมอาการคางเปนบางชวงเวลาในการท างานท าใหไมสามารถ
สแกนบตรไดสงผลใหจอแสดงผลและ Servo Motor ไมท างานได ตองท าการรเซต
Page 23
15
บทท 5
สรปและขอเสนอแนะ
ในการท างานของเครองจายชดพนกงานอตโนมตสามารถท างานไดตามขอบเขตทก าหนดไวคอ
1) 1 คนสามารถสแกนบตรได 1 ครงตอ 1 วน และสามารถรเซตเรมใหมได 2) สามารถแกไขปญหาการสนของเครองดวยการใช Servo Motor ทดแทน 3) เปลยนหนาจอใหมขนาดใหญขนเปน 3.5”
ปญหาทเกดขนของเครอง
-ถาวางของไมตรงตามจดทก าหนดของเครองอาจเกดปญหา เครองไมตกลงมาในชองรบของเนองจากมความผดพลาดในระยะการหมนของมอเตอรทไมสามารถดนของใหตกลงได
-บอรด Arduino มอาการคางไมท างานในบางชวงเวลาท าใหไมสามารถสแกนบตรไดตองท าการกดรเซต
Page 24
16
เอกสารอางอง
[1] Sun108 Co.,Ltd. ตหยอดเหรยญ เครองดม อตโนมต “108 Vending” ธรกจท าเงนตลอด 24
ชวโมง!! สบคนเมอ 3 มกราคม 2563,
เขาถงไดจาก https://www.smeleader.com/ตหยอดเหรยญ-108-vending/
[2] tpthaiuniform เหตผลทองคกรจ าเปนตองมชดฟอรมพนกงาน สบคนเมอ 3 มกราคม 2563,
เขาถงไดจาก www.tpthaiuniform.com/16861771/ เหตผลทองคกรจ าเปนตองมชดฟอรมพนกงาน
[3] ARDUINO MEGA 2560 สบคนเมอ 4 มกราคม 2563, เขาถงไดจาก https://www.gravitechthai.com/product-detail.php?WP=qmIZAJ1CM5O0hJatrTZo7o3Q [4] DC Converter สบคนเมอ 6 มกราคม 2563,
https://www.igetsolarcell.com/category/26/วงจร-แปลงแรงดนไฟ-step-up-step-down
[5] บทความ RFID พรอมตวอยางการตอใชงาน สบคนเมอ 15 มกราคม 2563, เขาถงไดจาก
https://www.thaieasyelec.com/article-wiki/review-product-article/rfid-ch4-how-to-use-rfid-
mifare.html
[6] myarduino Arduino ควบคม Servo Motor 360องศา เขาถงไดจาก
สบคนเมอ 15 มกราคม 2563,เขาถงไดจาก
https://www. myarduino.net/article/129/ สอนใชงาน-arduino-ควบคม-servo-motor-360องศา-
ตอเนอง
Page 25
17
ภาคผนวก
รปท 5.1 ดานหนาเครองจายชดพนกงานอตโนมต
รปท 5.2 ดานหลงเครองจายชดพนกงานอตโนมต
Page 26
18
รปท 5.3 ชองหยบของเครองจายชดพนกงานอตโนมต
รปท 5.4 ชองเตมของเครองจายชดพนกงานอตโนมต
Page 27
19
Arduino คอ โครงการทน าชปไอซไมโครคอนโทรลเลอรตระกลตางๆ มาใชรวมกนในภาษา C ซงภาษา C นเปนลกษณะเฉพาะ คอมการเขยนไลบารของ Arduino ขนมาเพอใหการสงงานไมโครคอนโทรลเลอรทแตกตางกน สามารถใชงานโคดตวเดยวกนได โดยตวโครงการไดออกบอรดทดลองมาหลายๆรปแบบ เพอใชงานกบ IDE ของตนเอง
รปท 5.5 การตอ Arduino บอรด กบ servo motor (ทมา : https://www.igetsolarcell.com/category/26/วงจร-แปลงแรงดนไฟ-step-up-step-down)
DC to DC Converter: Step-Down คอ วงจรลดแรงดนแบบ Step-Down หรอเรยกอกแบบ
วา Buck Converter (บคคอนเวอรเตอร) ใชลดแรงดนจากแรงดนสงใหต าลง ใชหลกการสวตชง-ตว
เหนยวน า(L) จงท าใหมความรอนและความสญเสยก าลงไฟนอย ไมเหมอนกบการลดแรงดนโดยใช
IC ตระกล 78xx / 317 ทวไปทใชหลกการลดทอนท าใหเกดความรอนสง วงจรบคคอนเวอรเตอร
เมอลดแรงดนลงแลวจะไดกระแส Output เพมขน
รปท 5.6 Step Down
Arduino Mega คอบอรดไมโครคอนโทรลเลอรทพฒนาจาก ATmega2560 ม 54 digital input/output โดยม 14 ขา สามารถใชเปน output แบบ PWM ได ม analog inputs 16 ขา ม UARTs(hardware serial ports) 4 ขา ท างานทความถ 16 MHz สามารถเชอมตอกบคอมพวเตอร
Page 28
20
ดวยสายเคเบล USB หรอใช adaptor AC-to-DC เพอเรมตนใชงาน และมปม reset สามารถตอเขากบ shields ทออกแบบเพอใชงานกบ Arduino Duemilanove หรอ Diecimila.
รปท 5.7 บอรด Arduino Mega 2560
(ทมา : https://www.gravitechthai.com/product-detail.php?WP=qmIZAJ1CM5O0hJatrTZo7o3Q)
Technical Specification
Microcontroller ATmega2560
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 54 (of which 14 provide PWM output , 4 UART TTL)
Analog Input Pins 16
DC Current per I/O Pin 40 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 256 KB of which 8 KB used by bootloader
SRAM 8 KB
EEPROM 4 KB
Clock Speed 16 MHz
Page 29
21
RFID ชอเตมๆ กคอ Radio Frequency Identification หรอการระบขอมลสงตางๆ
โดยใชคลนความถวทย ซงพวกเราทกคนคงจะคนเคยกบระบบนเปนอยางด เพราะวา RFID ถก
น าเขามาใชในชวตประจ าวนของเราอยางหลากหลาย เพยงแตวาเราจะรหรอไมเทานนเองวาสง
เหลานนใชเทคโนโลย RFID ระบบ RFID จะมองคประกอบหลกๆ ดวยกน 3 สวน คอ
1. ปาย(Tag, Transponder)
2. เครองอานปาย(Reader, Interrogator)
3. ฮารดแวร หรอระบบทใชประมวลผล
รป 5.8 Radio Frequency Identification
(ทมา: https://www.thaieasyelec.com/article-wiki/review-product-article/rfid-ch4-how-to-use-rfid-
mifare.html )
Page 30
22
การตงคาโปรแกรม Arduino
ตารางท 5 การตงคาโปรแกรม Arduino
#include "SPI.h"
#include "MFRC522.h"
#define SS_PIN 53
#define RST_PIN 5
#define LED_PIN 3
#define LED_PIN1 4
#include <Servo.h>
#include <deprecated.h>
#include <MFRC522.h>
#include <MFRC522Extended.h>
#include <require_cpp11.h>
MFRC522 rfid(SS_PIN, RST_PIN);
MFRC522::MIFARE_Key key;
/////////servo name///////////
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
Servo servo6;
int p=0;
int p1 =0;
int b=0;
int c=0;
int d=0;
int e=0;
int f=0;
#include <UTFT.h>
extern uint8_t BigFont[];
UTFT myGLCD(CTE32HR,38,39,40,41);
int pushButton = 2;
int Counter = 0;
int buttonPin = 2;
int buttonState = 0;
void setup() {
Serial.begin(9600);
SPI.begin();
rfid.PCD_Init();
pinMode(LED_PIN, OUTPUT);
pinMode(LED_PIN1, OUTPUT);
Page 31
23
/////////servo pin///////////
servo1.attach(8); //servo pin
servo2.attach(9);
servo3.attach(10);
servo4.attach(11);
servo5.attach(12);
servo6.attach(13);
pinMode(pushButton, INPUT_PULLUP);
Serial.print(" Counter = ");
Serial.println(Counter);
myGLCD.InitLCD();
myGLCD.setFont(BigFont);
int buf[478];
int x, x2;
int y, y2;
int r;
myGLCD.clrScr();
myGLCD.setColor(255, 0, 0);
myGLCD.setColor(255, 255, 255);
myGLCD.print("Suranaree University",
CENTER, 2);
myGLCD.print(" Hello", CENTER, 93);
myGLCD.print("Please Tap Card", CENTER,
132);
myGLCD.print("Thank You ...", CENTER,
290);
}
void loop(){{
if (digitalRead(pushButton) == 0)
{ Counter++ ;
Serial.print(" Counter = ");
Serial.println(Counter);
}
if (Counter==1) {
digitalWrite(LED_PIN,HIGH);
myGLCD.setColor(255, 0, 0);
myGLCD.clrScr();
myGLCD.setColor(64, 64, 64);
myGLCD.setColor(255, 255, 255);
myGLCD.print(" Reset Card", CENTER,
132);
delay(1000);
delay(1000);
Serial.println("RESET");
while (digitalRead(pushButton) == 0);
delay(100);
digitalWrite(LED_PIN,LOW);
Counter=0 ;
b=0;
c=0;
p=0;
d=0;
e=0;
f=0;
}
Page 32
24
myGLCD.setColor(255, 0, 0);
myGLCD.setColor(255, 255, 255);
myGLCD.print("Suranaree University", CENTER, 2);
myGLCD.print(" Hello", CENTER, 93);
myGLCD.print("Please Tap Card", CENTER, 132);
myGLCD.print("Thank You ...", CENTER, 290);
{
if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial())
return;
// Serial.print(F("PICC type: "));
MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak);
// Serial.println(rfid.PICC_GetTypeName(piccType));
// Check is the PICC of Classic MIFARE type
if (piccType != MFRC522::PICC_TYPE_MIFARE_MINI &&
piccType != MFRC522::PICC_TYPE_MIFARE_1K &&
piccType != MFRC522::PICC_TYPE_MIFARE_4K) {
Serial.println(F("Your tag is not of type MIFARE Classic."));
return;
}
String strID = "";
for (byte i = 0; i < 4; i++) {
strID +=
(rfid.uid.uidByte[i] < 0x10 ? "0" : "") +
String(rfid.uid.uidByte[i], HEX) +
(i!=3 ? ":" : "");
}
strID.toUpperCase();
Serial.print("Tap card key: ");
Serial.println(strID);
Page 33
25
ตารางท 6 การตงคาบตรใบท 1
/////////////////// โคด 1////////////////
if (strID.indexOf("67:9C:C0:3B") >= 0)
{
if (p<1)
{Serial.println("ppppp");
digitalWrite(LED_PIN1, HIGH);
myGLCD.clrScr();
myGLCD.setColor(255, 0, 0);
myGLCD.setColor(64, 64, 64);
myGLCD.setColor(255, 255, 255);
myGLCD.print(" Mr.Sanhaphon Masraksa",
CENTER, 93);
myGLCD.print(" Chairman ", CENTER, 150);
////////////Servo Drive/////////////
servo1.writeMicroseconds(2000); // สง
ให Servo หมนวนขวา
delay(600); // หนวงเวลา 2000ms
servo1.writeMicroseconds(1500); // สง
ให Servo หยด
delay(100); // หนวงเวลา 2000ms
servo1.writeMicroseconds(850); // สง
ให Servo หมนวนซาย
delay(600); // หนวงเวลา 2000ms
servo1.writeMicroseconds(1500); // สง
ให Servo หยด
delay(1000); // หนวงเวลา 2000ms
servo2.writeMicroseconds(2000); // สง
ให Servo หมนวนขวา
delay(600); // หนวงเวลา 2000ms
servo2.writeMicroseconds(1500); // สง
ให Servo หยด
delay(100); // หนวงเวลา 2000ms
servo2.writeMicroseconds(850); // สง
ให Servo หมนวนซาย
delay(600); // หนวงเวลา 2000ms
servo2.writeMicroseconds(1500); // สง
ให Servo หยด
delay(1000); // หนวงเวลา 2000ms
Serial.println(p);
delay(1000);
myGLCD.clrScr();
digitalWrite(LED_PIN1,LOW);
} p++;}
Page 34
26
ตารางท 7 การตงคาบตรใบท 2
////////////Servo Drive/////////////
servo3.writeMicroseconds(2000); // สง
ให Servo หมนวนขวา
delay(600); // หนวงเวลา 2000ms
servo3.writeMicroseconds(1500); // สง
ให Servo หยด
delay(100); // หนวงเวลา 2000ms
servo3.writeMicroseconds(850); // สงให
Servo หมนวนซาย
delay(600); // หนวงเวลา 2000ms
servo3.writeMicroseconds(1500); // สง
ให Servo หยด
delay(1000); // หนวงเวลา 2000ms
servo4.writeMicroseconds(2000); // สง
ให Servo หมนวนขวา
delay(600); // หนวงเวลา 2000ms
servo4.writeMicroseconds(1500); // สง
ให Servo หยด
delay(100); // หนวงเวลา 2000ms
servo4.writeMicroseconds(850); // สงให
Servo หมนวนซาย
delay(600); // หนวงเวลา 2000ms
servo4.writeMicroseconds(1500); // สง
ให Servo หยด
delay(1000); // หนวงเวลา 2000ms
Serial.println(b);
delay(1000);
myGLCD.clrScr();
digitalWrite(LED_PIN1,LOW);
}
b++; }
/////////////////// โคด 2////////////////
if (strID.indexOf("A3:AE:B8:1A") >= 0) {
if (b<1) {
myGLCD.clrScr();
myGLCD.setColor(255, 0, 0);
myGLCD.setColor(64, 64, 64);
myGLCD.setColor(255, 255, 255);
myGLCD.print(" Mr.Pratiphan Kaenchan",
CENTER, 93);
myGLCD.print(" Manager ", CENTER, 150);
digitalWrite(LED_PIN1,HIGH);
Serial.println("bbbbbbbb");
Page 35
27
ตารางท 8 การตงคาบตรใบท 3
////////////Servo Drive/////////////
servo5.writeMicroseconds(2000); // สงให Servo หมนวนขวา
delay(600); // หนวงเวลา 2000ms
servo5.writeMicroseconds(1500); // สงให Servo หยด
delay(100); // หนวงเวลา 2000ms
servo5.writeMicroseconds(850); // สงให Servo หมนวนซาย
delay(600); // หนวงเวลา 2000ms
servo5.writeMicroseconds(1500); // สงให Servo หยด
delay(1000); // หนวงเวลา 2000ms
servo6.writeMicroseconds(2000); // สงให Servo หมนวนขวา
delay(600); // หนวงเวลา 2000ms
servo6.writeMicroseconds(1500); // สงให Servo หยด
delay(100); // หนวงเวลา 2000ms
servo6.writeMicroseconds(850); // สงให Servo หมนวนซาย
delay(600); // หนวงเวลา 2000ms
servo6.writeMicroseconds(1500); // สงให Servo หยด
delay(1000); // หนวงเวลา 2000ms
Serial.println(c);
delay(1000);
myGLCD.clrScr();
digitalWrite(LED_PIN1,LOW);
}
c++; }
/////////////////// โคด 3 ////////////////
if (strID.indexOf("D2:3F:D0:D5") >= 0) {
if (c<1)
{
myGLCD.clrScr();
myGLCD.setColor(255, 0, 0);
myGLCD.setColor(64, 64, 64);
myGLCD.setColor(255, 255, 255);
myGLCD.print(" Miw ", CENTER, 93);
myGLCD.print(" Sale Maneger ", CENTER,
150);
digitalWrite(LED_PIN1,HIGH);
Serial.println("cccccc");
Page 36
28
ตารางท 9 การตงคาบตรใบท 4
/////////////////// โคด 4 ////////////////
if (strID.indexOf("DB:7C:6D:21") >= 0) {
if (d<1)
{
myGLCD.clrScr();
myGLCD.setColor(255, 0, 0);
myGLCD.setColor(64, 64, 64);
myGLCD.setColor(255, 255, 255);
myGLCD.print(" Mr.Weerawat Srito", CENTER, 93);
myGLCD.print(" Gardener ", CENTER, 150);
digitalWrite(LED_PIN1,HIGH);
Serial.println("ddddd");
servo1.writeMicroseconds(2000); // สงให Servo หมนวนขวาdelay(600); // หนวงเวลา2000ms
servo1.writeMicroseconds(1500); // สงให Servo หยด delay(100); // หนวงเวลา 2000ms
servo1.writeMicroseconds(850); // สงให Servo หมนวนซาย delay(600); // หนวงเวลา 2000ms
servo1.writeMicroseconds(1500); // สงให Servo หยดdelay(1000); // หนวงเวลา 2000ms
servo6.writeMicroseconds(2000); // สงให Servo หมนวนขวาdelay(600); // หนวงเวลา2000ms
servo6.writeMicroseconds(1500); // สงให Servo หยดdelay(100); // หนวงเวลา 2000ms
servo6.writeMicroseconds(850); // สงให Servo หมนวนซายdelay(600); // หนวงเวลา 2000ms
servo6.writeMicroseconds(1500); // สงให Servo หยดdelay(1000); // หนวงเวลา 2000ms
Serial.println(d);
delay(1000);
myGLCD.clrScr();
digitalWrite(LED_PIN1,LOW);
}
d++;}
Page 37
29
ตารางท 10 การตงคาบตรใบท 5
/////////////////// โคด 5 ////////////////
if (strID.indexOf("77:0A:2B:3F") >= 0) {
if (e<1)
{
myGLCD.clrScr();
myGLCD.setColor(255, 0, 0);
myGLCD.setColor(64, 64, 64);
myGLCD.setColor(255, 255, 255);
myGLCD.print(" Nooy", CENTER, 93);
myGLCD.print(" Technicl Manager ",
CENTER, 150);
digitalWrite(LED_PIN1,HIGH);
Serial.println("eeeee");
////////////Servo Drive/////////////
servo3.writeMicroseconds(2000); // สงให
Servo หมนวนขวาdelay(600); // หนวงเวลา2000ms
servo3.writeMicroseconds(1500); // สงให
Servo หยด delay(100); // หนวงเวลา 2000ms
servo3.writeMicroseconds(850); // สงให
Servo หมนวนซายdelay(600); // หนวงเวลา 2000ms
servo3.writeMicroseconds(1500); // สงให
Servo หยดdelay(1000); // หนวงเวลา 2000ms
servo2.writeMicroseconds(2000); // สงให
Servo หมนวนขวาdelay(600); // หนวงเวลา 2000ms
servo2.writeMicroseconds(1500); // สงให
Servo หยดdelay(100); // หนวงเวลา2000ms
servo2.writeMicroseconds(850); // สงให
Servo หมนวนซายdelay(600); // หนวงเวลา 2000ms
servo2.writeMicroseconds(1500); // สงให
Servo หยด
delay(1000); // หนวงเวลา 2000ms
Serial.println(e);
delay(1000);
myGLCD.clrScr();
digitalWrite(LED_PIN1,LOW);
}
e++;}
Page 38
30
ตารางท 11 การตงคาบตรใบท 6
/////////////////// โคด 6 ////////////////
if (strID.indexOf("CB:32:84:21") >= 0) {
if (f<1)
{
myGLCD.clrScr();
myGLCD.setColor(255, 0, 0);
myGLCD.setColor(64, 64, 64);
myGLCD.setColor(255, 255, 255);
myGLCD.print(" Max", CENTER, 93);
myGLCD.print(" Ferryman ", CENTER,
150);
digitalWrite(LED_PIN1,HIGH);
Serial.println("ffff");
////////////Servo Drive/////////////
servo5.writeMicroseconds(2000); // สงให
Servo หมนวนขวา
delay(600); // หนวงเวลา 2000ms
servo5.writeMicroseconds(1500); // สงให
Servo หยด
delay(100); // หนวงเวลา 2000ms
servo5.writeMicroseconds(850); // สงให
Servo หมนวนซาย delay(600); //
หนวงเวลา 2000ms
servo5.writeMicroseconds(1500); // สงให
Servo หยด delay(1000); // หนวงเวลา 2000ms
servo4.writeMicroseconds(2000); // สงให
Servo หมนวนขวา
delay(600); // หนวงเวลา 2000ms
servo4.writeMicroseconds(1500); // สงให
Servo หยดdelay(100); // หนวงเวลา 2000ms
servo4.writeMicroseconds(850); // สงให
Servo หมนวนซาย
delay(600); // หนวงเวลา 2000ms
servo4.writeMicroseconds(1500); // สงให
Servo หยด
delay(1000); // หนวงเวลา 2000ms
Serial.println(f);
delay(1000);
myGLCD.clrScr();
digitalWrite(LED_PIN1,LOW);
}
f++;}
}}}}
}}}}
Page 39
31
ประวตผจดท าโครงงาน
ผจดท าโครงงานคนท 1
นาย สณหพล มาศรกษา
B5926565
ผจดท าโครงงานคนท 2
นาย ปฏภาณ แกนจนทร
B5923663
ผจดท าโครงงานคนท 3
นาย วรวฒน ศรโท
B5929146