Computer Programming
การเขียนโปรแกรมคอมพิวเตอร์
Course description
Computational thinking, algorithms, variables, control structures, functions, data structures, device interfacing, data processing, sensor data handling, and introductory programming for system control.
Thai description
หลักการคิดเชิงคำนวณ อัลกอริทึม ตัวแปร โครงสร้างควบคุม ฟังก์ชัน โครงสร้างข้อมูล การรับส่งข้อมูลกับอุปกรณ์ การเขียนโปรแกรมเพื่อประมวลผลข้อมูล เซนเซอร์ และการควบคุมระบบเบื้องต้น
Course learning outcomes (CLO)
| CLO | Outcome | PLO |
|---|---|---|
| CLO1 | Write structured Python programs to solve technology problems | PLO4 |
| CLO2 | Read, process and store data from files and telemetry | PLO4 |
| CLO3 | Use Git and collaborative coding practices | PLO4PLO6 |
Learning modules
1Python basics and development environments
Weeks 1–3 · 30 h2 KU
Online (before class) · 15 h
Study the assigned knowledge units in advance, review media and take the module quiz
- Python programming for technology workIn development
- Jupyter NotebookTH
In class / field · 15 h
Lab or field practice from worksheets with a safety checklist
2Control structures and functions
Weeks 4–6 · 30 h1 KU
Online (before class) · 15 h
Study the assigned knowledge units in advance, review media and take the module quiz
- Python programming for technology workIn development
In class / field · 15 h
Lab or field practice from worksheets with a safety checklist
3Files, data and libraries
Weeks 7–9 · 30 h2 KU
Online (before class) · 15 h
Study the assigned knowledge units in advance, review media and take the module quiz
- Python programming for technology workIn development
- Data handling and visualisation with PythonIn development
In class / field · 15 h
Lab or field practice from worksheets with a safety checklist
4Reading telemetry with pymavlink
Weeks 10–12 · 30 h2 KU
Online (before class) · 15 h
Study the assigned knowledge units in advance, review media and take the module quiz
In class / field · 15 h
Lab or field practice from worksheets with a safety checklist
5Block programming and Git for teamwork
Weeks 13–15 · 30 h3 KU
Online (before class) · 15 h
Study the assigned knowledge units in advance, review media and take the module quiz
In class / field · 15 h
Lab or field practice from worksheets with a safety checklist
Assessment (draft)
| Labs and worksheets | 35% |
| Module quizzes | 10% |
| Midterm examination | 20% |
| Mini-project or practical exam | 35% |
Knowledge domain
Key references
- Matthes, E. (2023). Python crash course (3rd ed.). No Starch Press.
- MAVLink Development Team. MAVLink developer guide. link