47
Numerical Literacy จจจจจจจจจ 1.จจจจจจจจจจจ จจจจจจจจ จจจจ 503050361-4 2.จจจจจจจจจจจ จจจ จจจจจจ จจจจ 503050362-2 3.จจจจจจจจจจจจจจ จจจจจจ จจจจ 503050366-4 4.จจจจจจจจจจจจจจจ จจจจจจ จจจจ 503050364-8 5.จจจจจจจจจจจจจจจจ จจจ จจจจ จจจจ 503050367-2 6.จจจจจจจจจจจจจ จจจจ จจจจ จจจจ 503050369-8 7.จจจจจจจจจจจ จจจจจ จจจ จจจจ 503050377-9

Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

Numerical Literacy

จดทำ�โดย1.น�งส�วมยร อรรคบตร รหส

503050361-42.น�งส�วมทน� เอกวงศษ� รหส

503050362-23.น�งส�วว�รนทร อนทอง รหส

503050366-44.น�งส�ววชร�ภรณ ช�วงษ รหส

503050364-85.น�งส�ววล�สณย ม�กน�ค� รหส

503050367-26.น�ยศ�นตรกษ อณ�พรหม รหส

503050369-87.น�งส�วอรษ� พนธเทศ รหส

503050377-98.น�ส�วอรณน โทเท รหส

503050387-7

Page 2: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

เสนอ อ�จ�รยอสร� ก�นจกร

เอกส�รฉบบนเปนสวนหนงของร�ยวช�ก�รพฒน�ทกษะด�นก�รใชเทคโนโลยส�รสนเทศ

ภ�คเรยนท 1 ปก�รศกษ� 2551คำ�นำ�

เนองจากในปจจบนเทคโนโลยสารสนเทศไดพฒนาไปอยางรวดเรวมากซงผใชกตองอาศยการเรยนรสงตางๆทเกยวของกบเทคโนโลย

สารสนเทศ ซงในทนเทคโนโลยแบงไดหลายประเภท ดงนนสมาชกในกลม ไดเลงเหนถงความสำาคญจงไดทำาการศกษาเทคโนโลยสารสนเทศ

Numerical Literacy จงไดคนหาขอมลแลวนำามาคดกรองเพอเกบไวเปน เอกสารไวศกษาใหสำาหรบผทสนใจ หรอผทตองการศกษาสามารถนำาไปใชให

เกดความรได ซงคณะผจดทำาหวงเปนอยางยงวาเอกสารฉบบนจะเปน ประโยชนตอผทตองการศกษา หากผดพลาดประการใดกขอ อภยไว ณ ทน

ดวย

คณะผจดทำ�

Page 3: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

ส�รบญหนา

ความหมาย Numerical Literacy1

ความหมายของ CNC (Computer Numerical Control)2

ขอด/ขอเสย9

Numerical Programming11

ตวอยางของการทำางานของเครองปรนเตอร30

Page 4: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

Numerical Literacy

Numerical คอ ตวเลข 0 ถง 9 ตวอกษร หรอโคด เชน A , B , C ถง Z และสญลกษณอน ๆ เชน เครองหมาย + , - และ %

Numerical Literacy จงหมายถง การรทางตวเลข ซงเปนวชาเกยวกบ ตรรก เปนตวเลขทใชเกยวกบการควบคมเครองจกรกลตางๆ ซงเปนราย

ละเอยดเกยวกบ CNC (Computer Numerical Control)

C ยอมาจาก Control ( คอนโทรล ) หมายถง การควบคมโดยกำาหนด คา หรอตำาแหนงจรงทตองการเพอใหเครองจกรทำางานใหไดคาตามท

กำาหนด

เอนซ ( NC ) หมายถง การควบคมเครองจกรกลดวยระบบตวเลขและ ตวอกษร ซงคำาจำากดความนไดจากประเทศสหรฐอเมรกา กลาวคอ การ

เคลอนทตาง ๆ ตลอดจนการทำางานอน ๆ ของเครองจกรกล จะถก

Page 5: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

ควบคมโดยรหสคำาสงทประกอบดวยตวเลข ตวอกษร และสญลกษณอน ๆ ซงจะถกแปลงเปนเคลอนสญญาณ ( Pulse ) ของกระแสไฟฟาหรอ

สญญาณออกอน ๆ ทจะไปกระตนมอเตอรหรออปกรณอน ๆ เพอทำาใหเครองจกรกลทำางานตามขนตอนทตองการ

ความหมายของ CNC (Computer Numerical Control)

Computer ยอมาจาก คอมพวเตอรทตดตงบนเครองจกร

Numerical คอ ตวเลข 0 ถง 9 ตวอกษร หรอโคด เชน A , B , C ถง Z และสญลกษณอน ๆ เชน เครองหมาย + , - และ %

C ยอมาจาก Control ( คอนโทรล ) หมายถง การควบคมโดยกำาหนด คา หรอตำาแหนงจรงทตองการเพอใหเครองจกรทำางานใหไดคาตามท

กำาหนด

ดงนน ซ เอน ซ ( CNC ) ซงยอมาจาก Computer Numerical Control คอ คอมพวเตอรหรอไมโครโปรเซสเซอร สำาหรบใชควบคมการ

ทำางาน โดยมากจะเปนงานโลหะทมความซบซอนและตองการความแมนยำา สง โดยทการหลอไมสามารถทำาไดหรอสามารถทำาไดกตาม

เครองจกรกลเอนซในปจจบนนนสวนมากจะหมายถง เครองจกร กล ซเอนซ ซงจะมคอมพวเตอรทสามารถเขาใจตวเลขและตวอกษรหรอ

โปรแกรมทปอนและขณะเดยวกน จะใชคอมพวเตอรสำาหรบการควบคม เครองจกรจากคำาสง หรอ โคดในโปรแกรมทปอนเขาไป โดยโปรแกรมดง

กลาวสามารถปอนเขาคอมพวเตอรโดยใช

1. คยบอรด ( Keyboard ) หรอ แปนพมพ

2. สอบนทกความจำา เชน แผนดสก , แถบเทปแมเหลก และ แถบเทป กระดาษ

3. ระบบสอสารเชอมโยงขอมล เชน สายสงสญญาณ RS 232

เครองจกรกลพนฐานเชน เครองกลง เครองกด เครองเจยรนย และเครองตดโลหะแผนเปนเครองจกรกลทมความสำาคญอยางยงตอ

Page 6: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

อตสาหกรรมการผลตชนสวนเครองจกร เครองยนต และแมพมพ ตลอด – จนหนวยงานสราง ซอมงานโลหะโดยทวไป และอาจกลาวไดวาความ

กาวหนาของเครองจกรกลประสทธภาพสงหลายประเภทในยคปจจบนลวนแตมรากฐานมาจากเครองจกรพนฐานเหลานทงสน

รปท 1 การทำางานของเครองกลงทใชมอคนในการหมนเกลยวขบเพอปอนมดกลงเขาหาชนงาน

ระบบ CNC (Computer Numerical Control) เปนระบบคอมพวเตอร ทถกสรางขนโดยมวตถประสงคหลกคอ เพอเปลยนแปลงและควบคม

สภาพการทำางานของเครองจกรกลพนฐานดงกลาวจากเดมซงใชแรงงาน คนในการทำางานรวมกบเครองจกร ใหเครองจกรเหลานสามารถทำางานได

โดยอตโนมตดวยตวเอง นอกจากน ระบบ CNC ยงชวยเพมความสามารถใหเครองจกรพนฐานเหลานสามารถทำางานลกษณะซบซอนไดดวยความรวดเรวและแมนยำาในระดบทพนความสามารถในการรบรของมนษยโดย

ทวไปหลายสบเทาตว สำาหรบการประยกตใชระบบ CNC ในเครองจกรพน ฐานดงกลาว ระบบ CNC จะประกอบไปดวยมอเตอรไฟฟาจำานวนหนงซง

ถกนำาไปใชในการหมนเกลยวขบแทนมอคน และระบบคอมพวเตอรซงใชใน การควบคมมมและความเรวทมอเตอรไฟฟาเหลานนหมนเกลยวขบ โดย

ระบบคอมพวเตอรดงกลาวสามารถควบคมมมของมอเตอรไดดวยความ ละเอยดถง 0.1 องศาหรอดกวา หรอสามารถใหความละเอยดในการปอน

อปกรณตดเขาสชนงานสงถง 0.02 มม หรอดกวา ทงนขนอยกบระยะ คลอนของเกลยวขบ ตวอยางของการใชงานระบบ CNC กบเครองกลงใน

การปอนมดกลงโดยใชมอเตอรไฟฟา 2 ตวแสดงไวในรปท 2

Page 7: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

รปท 2 ระบบ CNC ใชมอเตอรไฟฟาในการหมนเกลยวขบเพอปอนอปกรณตดและใชระบบคอมพวเตอรในการควบคมมมและความเรวในการหมนของมอเตอร

ในปจจบน มการใชระบบ CNC สำาหรบเครองจกรพนฐานใน อตสาหกรรมผลตชนสวนเครองจกรกล เครองยนต แมพมพ และในหนวย

– งานสราง ซอมอยางแพรหลาย หากประมาณคราวๆ มลคาเบองตนของ ระบบ CNC ในอตสาหกรรมเหลานอยในระดบหลายพนลานบาท ในทาง

ปฏบตระบบ CNC ดงกลาวและผเชยวชาญในระบบดงกลาวถกนำาเขาจาก ประเทศทพฒนาแลว เชน สหรฐอเมรกา เยอรมน และ ญปน เปนตน ทงน

เนองจาก CNC ดงกลาวเปนเทคโนโลยระดบสงทยากตอการออกแบบและ การทำาความเขาใจจนสามารถนำามาใชงานไดจรง อยางไรกตาม ดร. พนจ

งามสม ไดใชเวลากวา 4 ปในการวจย ออกแบบ และพฒนา จนประสบผล สำาเรจในการสรางระบบ CNC ทใชงานไดจรง โดยงานวจยทเปนรากฐาน

ของผลงานนไดรบการพจารณาใหเปนบทความดเดนสาขา Dynamics, Systems, and Control ในการประชมเครอขายวศวกรรมเครองกลแหง

ประเทศไทย ในป พ.ศ. 2545 และไดรบการตพมพในวารสารวชาการระดบ สากลทมความแขงแกรงทางวชาการมากทสดเลมหนง คอ Journal of

Dynamic System, Measurement, and Control โดย American Society of Mechanical Engineers ในป พ.ศ. 2546

ระบบ CNC ทสรางขนนสามารถควบคมมม ความเรว และแรงบดในการหมนของมอเตอรไฟฟาภายใตความไมแนนอนของภาระงานและ

คณสมบตภายในได 4 ตวพรอมกน ( ขยายไดเปน 8 ตวเพอการควบคมแขนกลลกษณะตางๆ) โดยใชมาตรฐานรหส G และ M ในการสงการ ระบบสามารถแสดงความกาวหนาของการทำางานไดทงในเชงตวเลขและเชง

รปภาพบนจอคอมพวเตอร นอกจากนยงสามารถเปลยนพารามเตอรของ ระบบควบคมใหเขากบการใชงานควบคมเครองจกรไดหลากหลายรปแบบ

Page 8: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

เชน เครองกด, เครองกลง, แขนกล, เครองตดพลาสมา, เครองลอกพนผว, และเครองพบโลหะ เปนตน ในการทดสอบ ระบบ CNC ทสรางขน ถกนำาไปใชในการควบคมเครองกดททำางานในสามมตโดยใชมอเตอร

ไฟฟากระแสตรงจำานวน 4 ตว ซงในจำานวนน มอเตอร 3 ตวถกใชไปในการ ปอนชนงานและดอกกดในแนว X, Y, และ Z สวนมอเตอรอกหนงตวใชใน

การหมนดอกกดชนงาน ระบบ CNC ทออกแบบและสรางขนนสามารถ ควบคมใหเครองกดทำางานไดโดยอตโนมตตามโปรแกรมทตงไว ดวยความ

ละเอยด 0.02 มม (ถกจำากดดวยระยะคลอนของเกลยวขบทใชอย) หลงจาก การพฒนาระบบ CNC ตนแบบเสรจสนลง ในปจจบนระบบ CNC ดงกลาว

มตนทนในการสรางประมาณ 60,000 บาทตอเครอง ( รปท 3 แสดงวงจร ควบคมของระบบ CNC, รปท 4 แสดงโปรแกรมควบคมททำางานบน

คอมพวเตอร, และรปท 5 แสดงตวอยางชนงานทไดจากเครองกดท ควบคมการทำางานโดยระบบ CNC ทออกแบบและสรางขน)

ระบบ CNC นกำาลงถกเผยแพรออกสภาคอตสาหกรรมและภาคการ ศกษาเพอการใชงานจรงในหลายรปแบบ ตนแบบของระบบ CNC ทใช

ควบคมการทำางานของเครองกดและเครองกลงถกใชเปนอปกรณการเรยนการสอนในหองทดลองระบบควบคมสงกดภาควชาวศวกรรมเครองกล

รปท 3 สวนหนงของวงจรควบคมระบบ CNC ทออกแบบและสรางขน

                            

Page 9: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

รปท 4 ระบบ CNC แสดงผลการทำางานและความกาวหนาบนคอมพวเตอร

รปท 5 ตวอยางชนงานทไดจากเครองกดทควบคมดวยระบบ CNC ทสราง ขน (Compressed250%)

ขอด

Page 10: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

1. มความเทยงตรงสงในการปฏบตงานเพราะชนงานตาง ๆ ตองการขนาดทแนนอน

2. คณภาพสมำาเสมอทกชนงานเทากนหมดเนองจากผลตโดยใชโปรแกรม ในการสงเครองจกร CNC ทำางาน

3. โอกาสเกดความเสยหาย หรอตองแกไขชนงานนอยหรอแทบไมม เพราะชนงานททำาจะใชโปรแกรมในการควบคมถาผดพลาดกแกไขทโปรแกรม

 4. สามารถทำางานไดตลอด 24 ชวโมงโดยไมตองหยดพกเครองแตตองม คนควบคมประจำาเครอง CNC

5. มความรวดเรวสงในการผลตทำาใหไดผลผลตสง เพราะสามารถกำาหนด ระยะเวลาในการผลตชนงานไดวาใชเวลาในการทำางานกชนตอวนาท / นาท

/ ชวโมง

6. สามารถคาดคะแนและวางแผนการผลตไดอยางแมนยำา เพราะรระยะเวลาในการ

ปฏบตงานเพอทจะนดหรอสงงานลกคาไดตรงตามเวลา

7. สามารถสลบเปลยนรปแบบของชนงานไดหลากหลายรปทรงเนองจากสะดวกและรวดเรวในการทำางานเพราะใชโปรมแกรมในการสงงาน

8. เมอเปรยบเทยบจำานวนผลผลตทเทากน เครองจกรกล ซเอนซ ใชพนทนอยกวาและลดพนทการจดเกบชนงาน

10. มความสะดวก สำาหรบใชในการผลตชนงานตนแบบทมการแกไขบอย ๆ เพราะเวลาแกไขสามารถแกไขไดทโปรแกรม

11. ชนงานทมความซบซอนสงและมหลายขนตอนการผลต สามารถใช เครองจกรกล

ซเอนซ เครองเดยว ทำาใหไมตองยายไปทำางานทเครองอนใหเสยเวลาในการปฏบตงาน

12. ลดขนตอนในการตรวจสอบคณภาพลงเพราชนงานนนไดขนาดเทากน ทก ๆ ชนแตควรเลอกคาของความเรวรอบ , ความเรวตด ใหเหมาะสม

เพอลดอายการสกหรอของทลทใช

Page 11: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

13. ทำาใหสามารถใช ทล หรอ เครองมอตดไดอยางมประสทธภาพ เพราะ จะตองคำานวณคาตาง ๆ มากอนลงมอปฏบตงานกบเครองจกร CNC

14. ลดแรงงานในสายการผลตลงเนองจาก ผควบคมเครอง 1 คน สามารถคมได 3 ถง

5 เครอง

15. ใชอปกรณเสรมนอย ไมตองใชแผนลอกแบบ ( Camplates หรอTemplates ) แตผใชจะตองเขยนโปรแกรมใหถกตอง

ขอเสย

1. มราคาแพงมากเพราะตองนำาเขาจากตางประเทศเนองจากยงไมมการ ผลตเครองจกร CNC ภายในประเทศ

2. คาซอมแซมสง การซอมแซมมความซบซอน เพราะทง ฮารดแวร และ ซอฟตแวร รวมถง คอมพวเตอรและอปกรณไฟฟา อเลคโทรนกส ตองใช

ผชำานาญการ

 

3. อปกรณและซอฟตแวรเสรม ( Option ) มราคาสงและตองไดมาจากผ ผลตเครองจกร CNC นน ๆ เทานน

4. ตองมความรพนฐานทางวชาคณตศาสตรมากพอสมควรสำาหรบใชใน การเขยนโปรแกรมเพราะไมนนไมสามารถคำานวณหาคาของจดตาง ๆ ได

เลย

5. ตองมพนทในการทำางานวางพอและยงรวมไปถงสงอำานวยความสะดวก ตาง ๆ ใหแกผเขยนโปรแกรม NC

6. ตองหางานปอนใหเครองทำางานประจำาอยางสมำาเสมอไมใหหยดนงเพราะอาจจะทำาใหชนสวนบางอยางเสอมสภาพและเครองจกรจะไดรนเครองเตรยมพรอมตลอดเวลา

Page 12: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

7. ไมเหมาะสมกบการผลตชนงานจำานวนนอย ๆ ควรใชกบผลตชนงาน จำานวนมาก ๆ เพราะจะไมตองเสยคาใชสงในจางพนกงาน

8. คาซอมบำารงรกษาเครองจกรสงมาก ๆ เพราะตองใชชางผชำานาญ เฉพาะทางในการซอมแซม

9. ชนสวนอะไหลถาเกดการชำารดหรอเสยหายในบางกรณ ตองรอสงมาจากตางประเทศอยางเดยวเนองจากไมไดผลตในประเทศ

10. คอนโทรลเลอร เปนภาษาองกฤษ ชางตองเรยนรและมการฝกอบรมการใชเครองและการเขยนโปรแกรมกอนเรมใชเครองเพราะไมนนจะใชไม

เปน

Numerical Programming

เขยนโปรแกรม bow_der_kleine

Numerical Arithmetic Programming คอ การเขยนโปรแกรมทเนน การคำานวน โดยใช Array และ Matrix เปนหลก การเรยกใช Operation

หรอ Function ตาง ๆ ไมจำาเปนตองเขาถงสมาชกแตละตวใน Array หรอMatrix แตสามารถเรยกใชผานตวแปรทเปน Array หรอ Matrix ไดเลย

เชน ตวอยางแรก เปนการใช Procecure Arithmetic ทการบวก ตองเขาถง สมาชกทกตวใน List

a = [1,2,3,4,5]

b = [5,4,3,2,1]

c = []

for i,j in zip(a,b):

c.append(i+j)

Page 13: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

ตวอยางตอมา มการทำางานเหมอนตวอยางแรกทกประการ แตใชNumerical Arithmetic ทการบวกไมตองเขาถงสมาชกใน Array

from numpy import *

a = array([1,2,3,4,5])

b = array([5,4,3,2,1])

c = a+b

จะเหนไดวา การเขยนโปรแกรมแบบ Numerical อำานวยความสะดวก ในการเขยนโปรแกรมไดคอนขางมาก โดยเฉพาะอยางยง โปรแกรมทมการ

คำานวนทซบซอนมาก ๆ ภาษาเขยนโปรแกรมทรองรบการเขยนโปรแกรม แบบ Numerical มเพยงไมกภาษาเทานน ไดแก

MATLAB เขาใจวาเปนภาษาแรก ทรองรบ การเขยนโปรแกรมลกษณะน สวน Octave และ SciLab กถอวาเปนภาษา MATLAB แตม

Implementation ทตางออกไป

Python ดวยโมดล Numpy

FORTRAN 90 แตไมใช Arithmetic หลก และยงขาดอกหลาย ๆ Features

C++ ดวย Blitz++

จะเนน Python+Numpy และ MATLAB เปนหลก ซงการเขยน โปรแกรมทงสองภาษามความทาทายอยท จะทำาอยางไรถงจะใช for loop ให

นอยทสด การลด for loop เปนเรองทคอนขางจำาเปน ในการเขยน โปรแกรมแบบ Numerical เพราะนอกจากจะทำาใหโปรแกรมสนลง และอาน

งายขนแลว ในกรณของ Python+Numpy และ MATLAB ยงทำาให ความเรวของโปรแกรมเพมขนอกดวย ( อยางนอยหาเทา แตโดยปกตยสบ

ถงหาสบเทา)

การเขยนโปรแกรมแบบ Numerical ตางจากการเขยนโปรแกรมแบบ Procedure คอนขางมาก การจะลด for loop ไดนน ตองรเคลดไมลบตาง ๆ

พอสมควร

Page 14: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

หลกการเขยน

1 Initial

การสราง Array หรอ Matrix นน มวธการอยมากมายหลายวธดวยกน วธ ทพน ๆ ทสด คอ กำาหนดคาสมาชกตาง ๆ ใน Array หรอ Matrix ดวยตว

เอง หาก Array หรอ Matrix มสมาชกจำานวนนอย ๆ กดไป แตเมอไรท สมาชกจำานวนมากขน กพมพกนนวบวมเหมอนกน ยกตวอยางเชน

# Python + Numpy

from numpy import *

# สราง Array

a = array([1,2,3,4,5])

# สราง 2D Array

a = array([[1,2,3,4,5], [6,7,8,9,10]])

# สราง 3D Array

a = array([[[1,2,3,4,5], [6,7,8,9,10]],[[1,2,3,4,5], [6,7,8,9,10]]])

# สราง Matrix

b = matrix('1 2 3;0 0 1;1 12 0')

# สราง Matrix

b = matrix([[1, 2, 3], [0, 0, 1], [1 12 0]])

# สราง Matrix จาก Array

b = matrix([a,a,a])

Page 15: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

Ex2

% MATLAB

% สราง 1D Matrix แนวนอน

a = [1,2,3,4,5]

% สราง 1D Matrix แนวตง

a = [1;2;3;4;5]

% สราง 2D Matrix

b = [[2,3,4];[4,5,6];[6,7,8]];

หมายเหต จะเหนไดวา MATLAB และ Numpy มความคลายคลงกน พอสมควร แตมจดตางทสำาคญมากคอ Numpy แยกระหวาง Array และ

Matrix โดย Operation ระหวาง Array จะเปนแบบ สมาชกตอสมาชก(elementwise operation) และจะมกมตกได สวน Matrix จะเปนแบบLinear Algebra ทม 1 หรอ 2 มต แตใน MATLAB มองทกอยางเปนMatrix ทม 1 หรอ 2 มต

วธสราง Array หรอ Matrix แบบตอมา เปนการสรางแบบเรยงลำาตบ ตวเลข เชน 1-100 หรอ กลบหลงเปน 100-1 เปนตน ซงวธนใน MATLAB

คอนขางงายกวา Numpy เพราะใชแคเครองหมาย : สวนใน Numpy ตอง เรยกใชฟงกชน arange(), r_[], c_[] ซงคอนขางยงยากและสบสนพอ

สมควร

ประโยชนของการสราง Array ในลกษณะนคอ การนำา Array ทไดไป เปน แกน x หรอ แกน y ในการแทนคาผานฟงกชนหนง ๆ ยกตวอยางเชน

เราอยากรคาของ sin(x) ท x มคาตงแต -10 ถง 10 เรากสรางแกน x ทม

Page 16: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

คาตามทตองการ แลวนำาแกน x ทได ไปหาคาฟงกชน เปนตน ตอไปนคอตวอยางการใชงานครบ

>>> from numpy import *

>>> # สราง Array ทมคาตงแต -10 ถง 10 โดยสมาชกแตละตว มคาหาง กน 0.5

>>> x = arange(-10,10,0.5)

>>> y = sin(x) # คำานวนหาคา ฟงกชนผานแกน x

>>> # r_[begin:end:interval] เหมอน arange() ทกประการ ในกรณน สรางแกน x แบบกลบดาน

>>> x = r_[10:-10:-0.5]

>>> # c_[] คลาย ๆ r_[] แตสามารถสราง Muti Dimension Array ได

>>> x = c_[1:5,2:6]

>>> y = x**2 + 3*x + 4 # คำานวนคา พหนาม

>>> # สราง Matrix จาก c_[] แลวนำาคาทไดมาคณกน

>>> x = matrix(c_[1:5,2:6]) * matrix(c_[1:5,2:6]).T

Ex2

>> % เหมอนตวอยางแรกใน python เกอบทกประการ แตใน MATLAB จะรวมคาสดทายลงไปในผลทไดดวย

>> % Syntax begin:interval:end

>> x = -10:0.5:10;

>> y = sin(x);

>> % สราง Matrix ในเครองหมาย ; คนระหวาง row

Page 17: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

>> x = [1:5;2:6] ;

วธสราง Array หรอ Matrix อกแบบคอ การสราง Array หรอMatrix ทเปนคาคงท นนหมายความวา สมาชกทกตวใน Array หรอMatrix มคาเดยวกนหมด คาคงททมกถกนำามาใชบอย ๆ คอ ศนย และ

หนง เพราะทงสองคา เปนคณสมบตการบวก และการคณตามลำาดบ ในMATLAB และ Numpy จงมฟงกชนทใชสราง Array หรอ Matrix ทมคา

ศนย หรอ หนงโดยเฉพาะ ซงเราสามารถดดแปลงเปนการสราง Array คา คงตวอน ๆ ได ดวยการบวก หรอคณคาคงตวอน ๆ จาก Array ทได

การสราง Array ลกษณะน จะถกนำามาใชงานรวมกบ Array Slicing และ Conditioning ในกรณท เราตองการเกบคาทไดจากการคำานวน ไวใน

สมาชกของ Array ทเราตองการ โดยทเรารขนาดของ Array ลวงหนา ( อานแลวงง ๆ เอาเปนวาดตวอยาง ใน Slicing และ Condition อกท)

>>> from numpy import *

>>> # สราง Array หนงมต มสมาชสบตว และสมาชกทกตวมคาเปนศนย

>>> a = zeros(20)

>>> # เหมอนตวอยางแรก แตกำาหนดประเภทตวแปร เปนจำานวนเชงซอน

>>> a = zeros(20, dtype=complex64)

>>> # เหมอนตวอยางทสอง แต เปน Array สองมต ขนาด 10x10

>>> a = zeros((10,10), dtype=complex64)

>>> # เหมอนตวอยางทสาม แตสมาชกทกตวมคาเปนหนง

>>> a = ones((10,10), dtype=complex64)

>>> # เหมอนตวอยางทส แต เปน Array สามมต ขนาด 10x10x10

>>> a = ones((10,10,10), dtype=complex64)

>>> # เหมอนตวอยางทหา แตสมาชกทกตวมคาเปน pi และ เปนตวแปร ประเภท float

Page 18: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

>>> a = ones((10,10,10)) * pi

Ex2

>> % สราง Matrix ขนาด 10x10 สมาชกทกตวมคาเปนศนย

>> a = zeros(10) ;

>> % สราง Matrix ขนาด 1x10 สมาชกทกตวมคาเปนศนย

>> a = zeros(1,10) ;

>> % สราง Matrix ขนาด 10x1 สมาชกทกตวมคาเปนศนย

>> a = zeros(10,1) ;

>> % สราง Matrix ขนาด 10x1 สมาชกทกตวมคาเปนหนง

>> a = ones(10,1) ;

>> % สราง Matrix ขนาด 10x1 สมาชกทกตวมคาเปนหนง

>> a = ones(10,1) ;

>> % สราง Matrix ขนาด 10x1 สมาชกทกตวมคาเปน pi

>> a = ones(10,1)*pi;

>> % สราง Matrix ขนาด 10x1 สมาชกทกตวมคาเปน 0 + 1i (จำานวนเชงซอน)

>> a = zeros(10,1) + i*ones(10,1)

การสราง Array แบบสดทายทผมจะนำาเสนอ คอ การสราง Array แบบสม ซงสามารถนำาไปใชประโยชนไดคอนขางมาก โดยเฉพาะใน Simulation ซง

Array แบบสม ทมกถกนำามาใชบอย ๆ มดวยกนสองแบบคอ Normal Distribution กบ Uniform Distribution สวน Distribution อน ๆ นน มให

Page 19: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

เลอกใชมากมาย ทงใน Numpy และ MATLAB แตผมรสกวาของMATLAB เจงกวาของ Numpy พอสมควร

>>> from numpy import *

>>> # การสราง Array แบบสม ตองการโมดลแยกตางหาก

>>> from numpy.random import *

>>> # Uniform Distribution สมาชกมคาตงแต 0-1 ขนาด 100000

>>> a = random(100000)

>>> # Uniform Distribution สมาชกมคาตงแต 0-1 ขนาด 100x100

>>> a = random((100,100))

>>> # Uniform Distribution (Integer) สมาชกมคาตงแต -10-10 ขนาด100x100

>>> a = randint(-10,10, (100,100))

>>> # Normal Distribution ขนาด 100x100 , Mean = 0, Sigma = 1

>>> a = normal(0,1,(100,100))

Ex2

>> % Uniform Distribution สมาชกมคาตงแต 0-1 ขนาด 1x100000

>> a = random('uniform',0,1,1,100000);

>> % Uniform Distribution สมาชกมคาตงแต 0-1 ขนาด 100x100

>> a = random('uniform',0,1,100,100);

>> % Uniform Distribution (Integer) สมาชกมคาตงแต 0-1 ขนาด100x100

>> a =floor(random('uniform',-10,10,100,100));

>> % Normal Distribution ขนาด 1x100000 , Mean = 0, Sigma = 1

Page 20: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

>> a = random('normal',0,1,1,100000);

2 Slicing

เมอสราง Array ไดแลว ปญหาตอมาคอ เราจะนำาสมาชกทอยใน Array มา ใชไดอยางไร โดยปกตหากเรานำาตวแปร Array มาใช โดยทไมไดระบการเขา

ถงสมาชก หมายความวา เราตองการคำานวน โดยใชคาจากสมาชกทกตว ซงเปนการคำานวนแบบ Numerical ทว ๆ ไป แตกมการคำานวนหลาย ๆ

กรณ ทเราตองการคาบางคาของ Array มาใช ซงกรณเหลาน สามารถ กำาหนดไดโดย Slicing และ Conditioning

การเลอกสมาชกใน Array โดย Slicing นน เราสามารถกำาหนดไดโดยพารา เมเตอรสามตวคอ Index ของสมาชกตวแรก ทเรา ตองการเลอก (begin)

ความหางของ Index ระหวางสมาชกแตละตว ทเราตองการเลอก(interval) และ Index ของสมาชกตวสดทายทเราตองการเลอก (end)

ระหวาง MATLAB และ Numpy นน มขอแตกตางกนเลกนอยคอMATLAB จะเรยงลำาดบการ Slicing เปน begin:interval:end สวนNumpy จะเปน begin:end:interval

นอกจากนใน Numpy ยงม Syntax ทคอนขางยดหยนกวา MATLAB กลาวคอ เราสามารถละคา begin, end และ interval ได การละคาดงกลาว

เทากบเรากำาหนดคาตาง ๆ เปนคาปรยาย โดยคาปรยายมคาดงน begin=1 ในกรณท interval มคาเปนบวก และมคาเปนขนาดของ Array-1 ในกรณท

interval มคาเปนลบ สวน end มคากลบกน และ interval มคาปรยายเปน -1

>>> from numpy import *

>>> # สราง Array ทมคาสมาชกตงแต 0 - 9999

>>> a = arange(10000)

Page 21: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

>>> # เลอกสมาชก Array ทมคา Index เปน เลขค

>>> a[::2]

>>> # เลอกสมาชก Array ทมคา Index เปน เลขค

>>> a[1::2]

>>> # Inverse ของ Array

>>> a[::-1]

>>> # เลอกสมาชกของ Array ทกตว ยกเวน 20 คาสดทาย

>>> a[:-20]

>>> # เลอกสมาชกของ Array ยกเวน 20 คาสดทาย และ 10 คาแรก เรยงIndex จากมากไปหานอย

>>> a[-20:10:-1]

>>> # สราง Array สองมต ขนาด 2x100 ท column แรกสมาชกมคา ตงแต 0 -99 และ column ทสองสมาชกมคาตงแต100-1

>>> b = c_[:100,100:0:-1]

>>> # เลอกคาทกคาใน row แรก

>>> b[0,:]

>>> # เลอกคาทกคาใน column แรก

>>> b[:,0]

Ex2

>> % สราง Matrix ทมคาสมาชกตงแต 1 - 10000

>> a = 1:10000;

>> % เลอกสมาชก Matrix ทมคา Index เปน เลขค

>> a(1:2:end)

Page 22: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

>> % เลอกสมาชก Matrix ทมคา Index เปน เลขค

>> a(2:2:end)

>> % Inverse ของ Matrix

>> a(end:-1:1)

>> % เลอกสมาชกของ Matrix ทกตว ยกเวน 20 คาสดทาย

>> a(1:1:end-20)

>> % สราง Array สองมต ขนาด 100x2 ท row แรกสมาชกมคาตงแต 1 -100 และ row ทสองสมาชกมคาตงแต 100-1

>> b = [1:1:100;100:-1:1]

>> % เลอกคาทกคาใน row แรก

>> b(1,1:end)

>> % เลอกคาทกคาใน column แรก

>> b(1:end,1)

ตวอยางตอไปน เปนการเปลยนจาก Bit-Array ทประกอบดวยคา 1 และ 0 เปนสญญาณรป Sine (sin(x)) โดยคา Bit-Array หนงคา จะถก

แปลงเปนคาสญญาน 32 คา (32 Samples per Bit) โดยมเงอนไขวา หากBit มคาเปน 0 สญญาณจะมคาเปน -sin(x) และหาก bit มคาเปน 1

สญญาณจะมคาเปน sin(x) เนองจากโคดของ Numpy และ MATLAB คลายกนมาก ผมเลยขอละ โคดของ MATLAB เอาไว

>>> from numpy import *

>>> from numpy.random import *

>>> # กำาหนดจำานวน bit ของ Bit-Array

>>> nbit = 10000

>>> # กำาหนดจำานวน Samples per bit ของ สญญาณ

Page 23: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

>>> sample = 32

>>> # สราง Bit-Array ดวยการสม

>>> bit = randint(0,2,nbit)

>>> # สรางสญญาณพนฐาน

>>> sig = sin(arange(sample*nbit)*pi/16)

>>> # คำานวนคา prefix หาก bit == 1 => prefix = 1 , bit == 0 => prefix = -1

>>> prefix = bit*2 -1

>>> # คำานวนคาสญญาณ

>>> for i in range(sample) : sig[i::sample] = prefix*sig[i::sample]

ตวอยางตอมา คลาย ๆ กบตวอยางกอนหนาน แต Bit-Array เปน Array สองมต และสญญาณทไดเปนสญญาณเชงซอน โดยคาของ Bit-Array ใน

row ทหนง จะถกแปลงเปนสวนจรงของสญญาณ และ คาของ Bit-Array ใน row ทสอง จะถกแปลงเปนสวนจนตภาพของสญญาณ นอกจากน ยง

กำาหนดใหฟงกชนพนฐานของสวนจตภาพของสญญาณ เปน Cosine แทนทจะเปน Sine อกดวย

>>> from numpy import *

>>> from numpy.random import *

>>> nbit = 10000

>>> sample = 32

>>> bit = randint(0,2,(2,nbit))

>>> # สรางสญญาณพนฐาน เปนสญญาณเชงซอน

>>> sig = sin(arange(sample*nbit)*pi/16) + 1j * cos(arange(sample*nbit)*pi/16)

Page 24: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

>>> prefix = bit*2 -1

>>> # คำานวนคาสญญาณ โดยใชการ Slicing แบบสองมต และแยกคำานว นระหวางสวนจรง และสวนจตภาพ

>>> for i in range(sample) : sig[i::sample] = prefix[0,:]*sig[i::sample].real + 1j*prefix[1,:]*sig[i::sample].imag

เพอแสดงใหเหนถงขอแตกตาง ตวอยางตอไปนเปนโปรแกรมเดยวกน กบ ตวอยางกอนหนาน แตใช List ของ Python แทน Array ในการคำานวน

แมวา List ของ Python จะสามารถ slice ได แตกไมสามารถคำานวนในรป แบบ Numerical ได ดงนนเราจงตองใช for loop ในการเขาถงสมาชกทก

ตว ผลทไดคอ โคดทมความยาวมากขน และยงใชเวลาในการคำานวน มากกวาการคำานวนแบบ Numerical ถงแปดเทา

>>> from random import *

>>> from math import *

>>> nbit = 100000

>>> sample = 32

>>> bit = [[],[]]

>>> for i in xrange(nbit):

... bit[0].append(randint(0,2))

... bit[1].append(randint(0,2))

>>> sig = []

>>> for i in xrange(sample*nbit):

... sig.append( sin(i*pi/16) + 1j*cos(i*pi/16))

>>> prefix = bit

>>> for i in xrange(nbit):

Page 25: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

... prefix[0][i] = bit[0][i]*2 - 1

... prefix[1][i] = bit[1][i]*2 - 1

>>> for i in xrange(nbit) :

... for j in xrange(sample):

... sig[i*sample + j] = prefix[0][i]*sig[i*sample + j].real + 1j*prefix[1][i]*sig[i*sample + j].imag

ตวอยางสดทาย เปนตวอยางทแสดงใหเหนถงประโยชนของการใช งาน zeros รวมกบ Slicing โดยในตวอยางน เราตองการหา Array ทม

ลกษณะสมมาตร (symmetry) โดยในขนแรก เราสราง Array ทมขนาดครง นง ของขนาด Array ทเราตองการกอน จากนนเราจงคำานวนคาฟงกชน จาก Array ดงกลาว แลวจงสงคาทได ไปยง Array ทเราตองการ โดยใช

Slicing

>>> from numpy import *

>>> x = sin(arange(0,10,0.01))

>>> y = zeros(2*x.shape[0], dtype=float32)

>>> y[:x.shape[0]] = 1*x

>>> y[x.shape[0]:] = 1*x[::-1]

3 Conditioning

Conditioning คอ การเขาถงสมาชกของ Array โดยมเงอนไข หากไม ใช Numerical ในการคำานวน กคอ การใช if-statement ใน loop นนเอง โดย

ในขนแรก เราตองกำาหนดเงอนไขกบ Array ทเราตองการกอน ผลทไดคอArray ทมสมาชกเปนคา boolean และมจำานวนสมาชกเทากบ Array ทเรา

กำาหนดเงอนไข จากนน เราจงนำา Array ทได ไปเปนตวกรอง สำาหรบ Array ทเราตองการเลอกคา ซงตองมจำานวนสมาชกเทากบ Array เงอนไข ผลท

Page 26: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

ไดคอ Array อกตวหนง ซงใชตรรกะจาก Array เงอนไข ในการเลอก สมาชก จาก Array เลอกคา อานแลวงงเหมอนเดม ดตวอยางดกวาครบ

>>> from numpy import *

>>> from math import *

>>> a = normal(0,1,1000)

>>> # สราง Array เงอนไข ทมคาเปน True เมอ สมาชกของ a มคา มากกวา 0

>>> cond = a > 0

>>> # สราง Array ทมคณสมบตเหมอน a แตสมาชกทกตวมคาเปนศนย

>>> c = zeros_like(a)

>>> # สำาหรบ a ทมคามากกวา ศนย ใหหาคา sin ของ a แลวเกบไวใน c

>>> c[cond] = sin(a[cond])

>>> # สำาหรบ a ทมคานอยกวา ศนย ใหหาคา cos ของ a แลวเกบไวใน c

>>> c[~cond] = cos(a[~cond])

Ex2

>> % การคำานวนเหมอนตวอยางใน Numpy ทกประการ

>> a = random('normal',0, 1, 1, 1000);

>> cond = a > 0;

>> c = zeros(size(a));

>> c(cond) = sin(a(cond));

>> c(~cond) = sin(a(~cond));

Page 27: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

ตวอยางตอไปน เปนตวอยางคลาย ๆ กบตวอยางการสรางสญญาณ ใน Array Slicing แตแทนทจะสรางสญญาณเปนรป sin กสรางสญญาณ

เปนรป Gauss แทน จากนนจงบวกคา Noise ลงไปในสญญาณ จากนนก กรองสญญาณดวย Gauss-Filter แลวจงมาคำานวนกลบเปนคา bit อกครง

หนง คา bit ทได จะถกนำาไปเปรยบเทยบกบคา bit ทถกสรางขนในตอนแรก เพอคำานวนหาอตราขอผดพลาดของการสงสญญาณ แมวาจะเปนตวอยาง

ทคอนขางซบซอน แตกแสดงการนำาเทคนคตาง ๆ มาใชงานไดดทเดยว

#!/usr/bin/python

# -*- coding: utf-8 -*-

from numpy import *

from numpy.random import *

from numpy.fft import *

# Gauss low pass filter

def gauss_lp(dimen):

# คำานวน Gauss Filter

return roll( exp(-0.5*arange(-8,8,16/float(dimen), dtype=complex64)**2), dimen/2)

def get_signal_error():

nbit = 100000

sample = 32

bit = randint(0,2,(2,nbit))

prefix = (bit[0]*2-1) + 1j*(bit[1]*2 -1)

sig = zeros(sample*nbit, dtype=complex64)

Page 28: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

# คำานวน Gauss-Impulse (สญญาณรประฆงควำา)

impulse = exp(-0.5*arange(-4,4,0.25)**2)

for i in range(sample) :

# แปลง Bit เปนสญญาณรป Gauss

sig[i::sample] = impulse[i]*prefix

# คำานวนสญญาณรบกวน

noise = normal(0,0.75,nbit*sample) + 1j*normal(0,0.25,nbit*sample)

# บวกสญญาณรบกวรลงไปในสญญาณ

sig += noise

# กรองสญญาณดวย Gauss-Filter

sig = ifft(fft(sig)*gauss_lp(sample*nbit))

# คำานวนหา Bit ทไดจากสญญาณ หากสญญาณมคามากกวา 0 => Bit = 1

bitOut = array([ 1*( sig[16::32].real > 0), 1*( sig[16::32].imag > 0)])

# หาจำานวน Bit ทผดพลาด โดยเปรยบเทยบ Bit ขาเขา กบ Bit ขาออก

BER = sum(sum(bit != bitOut)) / (2.0*nbit)

print 'Bit Error Rates = %.5f '%BER

if __name__ == '__main__' : get_signal_error()

Page 29: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

แมวาโปรแกรมในตวอยางสดทาย ( หรอตวอยางอน ๆ ) สามารถใชการ เขยนโปรแกรมแบบทเรารจกกนทวไป แกปญหาได ( ทง Numpy และ

MATLAB) แตขนาดของโปรแกรมตองมขนาดใหญกวาหลายเทา และท สำาคญ โปรแกรมทไดมความเรวตำากวาการใช Numerical มาก

การควบคมเชงตวเลขดวยคอมพวเตอร ( CNC )

การควบคมเชงตวเลขดวยคอมพวเตอร หรอทรจกกนในชอของCNC ( Computerized Numerical Control ) นน

เปนการประยกตใชความสามารถขนสงของระบบควบคมทประมวลผลเชง ตวเลข ซงมคอมพวเตอรเปนอปกรณหลก

ในการประมวลผลความเรวสง โดยนำามาใชกบการควบคมกระบวนการ ทำางานของเครองจกรในอตสาหกรรมการผลต

ดงนน จงอาจกลาวไดวา CNC คอ การควบคมเครองจกรกลดวย คอมพวเตอร ซงจะตองทำาการเขยนชดคำาสง หรอ

โปรแกรมสำาหรบควบคมเครองจกรดวย โดยทวไปแลว นยมเรยกรวมทง ระบบควบคมและเครองจกรวา เครอง CNC

ปจจบน มการนำาความสามารถดานการควบคมของฟซซลอจกมา ผนวกใชกบ CNC เพอชวยเพมความถกตองแมนยำา และปรบแตงคาตางๆ

ในการควบคมการทำางานของเครอง CNC ดวย

การเลอกซอ CNC มาใชงานนนเราตองดกอน วางานของเรานนขน รปดวยกรรมวธการผลตแบบใด หลกๆ นนเครอง CNC ทใชทวไปพนฐาน

นนกคอ เครองกลง และ เครองกด สำาหรบหลกการเบองตนนน จะเลอกเครองจกรดงน

1. ประเภทของงาน วสดทใชสรางชนงาน( เหลก อะลมเนยม หรอไม )

Page 30: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

2. ขนาดของงาน เลอกเครองจกรทม table ทใหญกวาชนงาน เลอกใหญๆ ไวกด เพราะเผอทำางานทมขนาดใหญๆ ได

3. ความละเอยดในการสรางชนงาน ตองดกอนวางานของเรานนตองการprecission มากนอยแคไหน โดยปกตแลวในระดบ 0.1 mm (100 ไมครอน)

กนาจะเหมาะสม นอกเสยจากวาตองการละเอยดในระดบ 10-50 ไมครอน กตองเลอกเครองจกรทละเอยดหนอย

4. ความเรวรอบของหวจบ หรอหวกด รวมถงกำาลงของเครองจกร ดวย

การควบคมเครองจกรดวยระบบเชงตวเลข โดยจดหาและประมวลผลดวย คอมพวเตอร กลาวคอ ระบบควบคมแบบนจะมคอมพวเตอรทมความสง

เพมขนเขาไปในระบบเพอทำาใหสามารถจดการกบขอมลทปอนเขาไปในระบบ น ตลอดจนสามารถประมวลผลขอมลเพอนำาผลลพธทไดไปควบคมการ

ทำางานของเครองจกร

ตวอย�งของ CNC

ก�รทำ�ง�นของปรนเตอร

การทำางานของเครองพมพ

1. Initailized เครองพมพ โดย

1. เครองคอมพวเตอรจะสงสญญาณ Reset ไปท Printer Card

2. Printer Card จะสงสญญาณ Reset ผาน Parallel Port ไปท เครองพมพ

3. Printer Card จะสงสญญาณ STROBS ผาน Parallel Port ไปท เครองพมพ ไฟ Online ทเครองพมพจะตด และเครองพมพจะสง

สญญาณ Select กลบมาท Printer Card และ Printer Card จะสง สญญาณ I/O CH RDY ไปทเครองคอมพวเตอร ซงจะแสดงวา

เครองพมพพรอมทำางาน

2. การพมพงานออกจากเครองพมพ

1. เครองคอมพวเตอรจะสงสญญาณ IRQ 7 ไปท Printer Card

Page 31: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

2. เครองคอมพวเตอรจะสงสญญาณ I/O W ไปท Printer Card

3. Printer Card จะสงสญญาณ I/O CH RDY ไปทเครอง คอมพวเตอร เพอจะแสดงวาเครองพมพพรอมรบขอมล

4. เมอเครองคอมพวเตอรไดรบสญญาณ I/O CH RDY จะสงขอมล ผานพอรตขนาน ไปท Printer Card

5. เครองพมพจะสงสญญาณ Select ไปท Printer Card เพอจะแสดง วาเครองพมพพรอมรบขอมล

6. Printer card จะสงขอมล Buffer ของเครองพมพ เพอพมพงาน ตามลำาดบ

7. เครองพมพจะสงสญญาณ ACK ไปท Printer Card เพอจะแสดง วาเครองพมพไดรบขอมลแลว

8. เครองพมพจะสงสญญาณ BUSY ไปท Printer Card เพอจะ แสดงวาเครองพมพกำาลงพมพงานอย ไมวางทจะรบขอมลใหมไดอก

จนกวาจะพมพงานเสรจ

3. ถาเกดปญหาระหวางการพมพ จะมการทำางานดงน

1. ถากระดาษหมด paper out sensor ในเครองพมพจะตรวจพบ และ สงสญญาณ Paper Out ไปท Printer Card ไฟสญญาณแสดงสถานะ กระดาษจะตด หรอ ถากระดาษตดขด หรอกลไกขดของ sensor จะสง

สญญาณ Error ไปท Printer Card

2. เครองพมพจะสงสญญาณ select เปน 0 ไฟ online จะดบ

4. Printer Card จะสงสญญาณ I/O CH RDY เปน 0 เพอแสดงวาเครองพมพไมพรอมทจะทำางาน

ภาพวงจรการทำางานของปรนเตอร

Page 32: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข
Page 33: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข
Page 34: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข
Page 35: Numerical Literacy · Web viewต วอย างของการทำงานของเคร องปร นเตอร 30 Numerical Literacy Numerical ค อ ต วเลข

อางองhttp://biolawcom.de/blog/709

http://en.wikipedia.org/wiki/Numeracy