Hello World
๋ค์ด๊ฐ๋ฉฐ
์ฃผ๋ฏธ๋ ๊ฐ๊ฒฐํ๊ณ ํ์ตํ๊ธฐ ์ฉ์ดํ Python์ ์ตํ๋ ๋๊ตฌ๋ก์๋ ํ๋ฅญํ ๊ต์ฌ์ ๋๋ค. ๋น์ฐํ ์ฃผ๋ฏธ๋ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ๊ฐ์ง Python์ ์ด์ฉํด์ ๋ณด๋ค ๋ง์ ๊ธฐ๋ฅ์ ๋ํ ์์ฝ๊ฒ ๊ตฌํํ ์ ์์ต๋๋ค. ์ด๋ฒ ๊ณผ์ ์ Python์ ๊ฐ๋จํ ๋ฌธ๋ฒ๋ถํฐ ๋ก๋ด ์ฃผ๋ฏธ๋ฅผ ํ์ตํ๋ ๊ณผ์ ๊น์ง๋ฅผ ๋ค๋ฃจ๊ณ ์์ต๋๋ค. ๊ทธ ์ค์์ ์ฒซ ๋ฒ์งธ ๊ธ์ Hello World๋ผ๊ณ ํํ๋ค ๋ถ๋ฅด๋ ๋จ๊ณ๋ถํฐ ์์ํด๋ณด๊ฒ ์ต๋๋ค.
์ค๋น๊ณผ์
์ ์ ๊ธ์์ ์ํํ๋ ๋ง์ง๋ง ํ๋ฉด์ด ๊ธฐ์ต๋์๋์?
์์ ํ ๋น ์๋ก์ด ํ๋ฉด์ด์์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ฌ๊ธฐ์ ๋ถํฐ ์์ํด๋ณด๋ ค๊ณ ํฉ๋๋ค.
ํ๋ฉด ์๋จ์ untitled๋ผ๊ณ ๋์ด ์๋ ๋ถ๋ถ์ด ์์ต๋๋ค. ์ฌ๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
์ฌ๊ธฐ์ Hello World๋ผ๊ณ ์ ๋ ฅํด์ ๋ฌธ์์ ์ด๋ฆ์ ๋ณ๊ฒฝํ๋๋ก ํฉ๋๋ค. ์ด ์ด๋ฆ์ Hello World.ipynb์ด๋ผ๋ ์ด๋ฆ์ผ๋ก ์ฃผ๋ฏธ์ ์ ์ฅ๋ฉ๋๋ค.
์ด์ ์ ๋ง ๊ฐ๋จํ ์ฝ๋ํ๋๋ฅผ ์ ๋ ฅํด ๋ณด๊ฒ ์ต๋๋ค. print๋ Jupyter Notebook ํ๋ฉด์ ๊ธ์๋ฅผ ์ถ๋ ฅํ๋ ๋ช ๋ น์ ๋๋ค.
Jupyter Notebook์๋ ์ด๋ ๊ฒ ์ ๋ ฅํ๋ฉด ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์คํ์ ํค๋ณด๋์์ SHIFTํค์ ENTERํค๋ฅผ ๋๋ฅด๋ฉด ๋ฉ๋๋ค.
๊ทธ๋ฌ๋ฉด ์ ๊ทธ๋ฆผ์ฒ๋ผ ์คํ๋๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค. ์ด์ ์์ผ๋ก ์ฃผ๋ฏธ์ Jupyter Notebook ํ๋ฉด์์ ์คํํ๋ค๊ณ ๋งํ๋ฉด ๊ทธ๊ฒ์ SHIFTํค์ ENTERํค๋ฅผ ๋๋ฌ์ ์คํํ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋ฉ๋๋ค.
์ค๋์ ๋ชฉํ
์ฃผ๋ฏธ๋ ๋ท๋ฉด์ ์๋์ฐจ๋ก ์น๋ฉด ๋ธ๋ ์ดํฌ ๋ฑ์ ์ญํ ์ ํ๋ LED๊ฐ ์ฅ์ฐฉ๋์ด ์์ต๋๋ค. ์ด LED๋ฅผ ๋๊ณ ์ผ๋ ๋์์ Python์ผ๋ก ์ํํ๋๋ก ํ๊ฒ ์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋๋์ด ์ด ๊ฐ๋จํ LED๋ฅผ ๋์์ํค๋ ๊ณผ์ ์์ Python์ ์์ฃผ ๊ธฐ์ด๋ ํจ๊ป ๋ค๋ฃจ๋๋ก ํ๊ฒ ์ต๋๋ค.
์ฝ๋ ์ค๋ช
์ฐ๋ฆฌ๊ฐ ๊ฐ์ฅ๋จผ์ ํด์ผํ ์ผ์ ์ฃผ๋ฏธ์ ํ๋์จ์ด ์์์ ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ๋ zumi ๋ชจ๋์ ์ํฌํธ(import)ํ๋ ๊ฒ์ ๋๋ค. ์ผ๋จ, zumi ๋ชจ๋์ด ์ด๋ค ๊ฒ์ธ์ง ์์์ผ๊ฒ ๋ค์. ์ฃผ๋ฏธ์์ ๋ก๋ด ํ๋์จ์ด๋ฅผ ๋ค๋ฃฐ ์ ์๋ ๋ง์ ๊ธฐ๋ฅ์ ํฌํจํ ๋ชจ๋์ ๋๋ค. ๊ทธ ์์๋ ๋ก๋ด์ ๊ธฐ์ธ์ด์ง๋ ๊ฐ๋๋ฅผ ์ธก์ ํ๋ค๋ ์ง, ์ ์ธ์ ์ผ์์ ๊ฐ์ ํ์ธํ๊ฑฐ๋, LED์ ๋ถ์ ๋ฅผ ๋ค๋ฃจ๋ ์์ญ์์ ์นด๋ฉ๋ผ ์์์ ๋ค๋ฃจ๊ณ LCD ํ๋ฉด์ ์ถ๋ ฅ์ ํ๋ ๊ธฐ๋ฅ๊น์ง๋ฅผ ๊ตฌํํ ์ ์๋ ๊ธฐ๋ฅ์ ํฌํจํ๊ณ ์์ต๋๋ค.
Python์ ๋น์ทํ ๊ธฐ๋ฅ์ ๋ชจ์์ ๋ชจ๋๋ก ๋ง๋ค๊ณ ๊ทธ ๋ชจ๋์ ์ฌ์ฉ์๋ค์ด ์ํฌํธ(import)๋ผ๋ ๊ณผ์ ์ ๊ฑฐ์ณ์ ์ฌ์ฉํ ์ ์๊ฒ ํ๊ณ ์์ต๋๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ฃผ๋ฏธ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ์ผ๋จ zumi ๋ชจ๋์ import ํด์ผํฉ๋๋ค.
import zumi
์๋ง ์ ๊ณผ์ ์ ์ป๋ฏ ์ดํดํ๊ธฐ๋ ์ด๋ ค์ธ ์ ์์ต๋๋ค. ์ ๋ ์ค์ ๊ฐ๋จํด ๋ณด์ด์ง๋ง ํ์ด์ฌ์์ ๊ฝค ์ค์ํ ๊ฐ๋ ๋ค์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ง๊ธ ์ด๋ฅผ ์ค๋ช ํ๋ ๊ฒ์ ๋์ด๋์ ๋ฌธ์ ์ ๋ก๋ด ์ฃผ๋ฏธ๋ฅผ ์ฌ์ฉํ๋ ๋ชฉ์ ์ ๋น์ถฐ ๋๋ฌด ๊น๋ค๊ณ ์๊ฐํฉ๋๋ค. ๊ทธ๋์ ๊ฐ๋ตํ๊ฒ ์ค๋ช ํ๊ณ ์ง๋๊ฐ๋ ค๊ณ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ถ๋ช ์ฃผ๋ฏธ๋ฅผ ํ์ด์ฌ์ผ๋ก ํ์ตํ๋ ๊ณผ์ ์ ๊ฑฐ์น๋ค ๋ณด๋ฉด ์ฌ๋ฌ๋ถ๋ค์ ์ ์ ์ดํดํ๊ฒ ๋ ๊ฒ์ ๋๋ค.
๋จผ์ ์ฒซ ์ค์ zumi.zumi ๋ชจ๋์์ Zumi๋ผ๋ ๋ชจ๋์ ๊ฐ์ ธ์ค๋(import) ๊ฒ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ zumi์ด๋ฆ์ผ๋ก ์ด๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ํ๋ ๊ณผ์ ์ด ๋ ๋ฒ์งธ ์ค์ ๋๋ค. ์ด ๊ณผ์ ์์๋ ํด๋์ค(class), ์ธ์คํด์ค(instance), instanciation ๋ฑ์ ์ด๋ ค์ด ์ฉ์ด๊ฐ ๋ฑ์ฅํ ์๋ ์์ง๋ง, ํ์ด์ฌ์ ์ฅ์ ์ ์ผ๋จ ๋์ด๊ฐ๋ ๋๋ค๋ ๊ฒ์ ๋๋ค. ์๋ฌดํผ ์ ๋ ์ค์ ์๋ฏธ๋ ์ฐ๋ฆฌ๋ ์ง๊ธ ๋ก๋ด ์ฃผ๋ฏธ๋ฅผ ์ฌ์ฉํ ์ค๋น๊ฐ ๋์๋ค๋ ๋ป ์ ๋๋ค. ์ด์ ์คํํด๋ณด๋๋ก ํ์ฃ .
์ฝ๋์ ์คํ๊ฒฐ๊ณผ๊ฐ ๋นํฉ์ค๋ฝ๋์? ๊ด์ฐฎ์ต๋๋ค. ์ ๋ง์ ์๋ฏธ๋ ์ฃผ๋ฏธ์์ PC๋ก ์ฌ์ฉํ๊ณ ์๋ Raspberry PI Zero ๋ณด๋์ ๋ก๋ด ์ฃผ๋ฏธ์ ์ฃผ์ ์ ์ด ๊ธฐ๋ฅ์ ๋ด๋นํ๋ ๋ณด๋์ ๋ช๋ช ์ฃผ์ ๊ธฐ๋ฅ๋ค์ด ์ ์์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋๋ก ์ค๋น๊ฐ ์๋ฃ๋์๋ค๋ ๋ป ์ ๋๋ค.
LED ์ผ๋ณด๊ธฐ
์ฃผ๋ฏธ๋ ์ ๋ฉด์์ ๋ฐ๋ผ๋ณผ๋ ํ์์ ๋ฐ์ค๋ก ํ์๋ ๋ถ๋ถ์ ์ฝ๊ฐ ์์ชฝ์ ํค๋๋ผ์ดํธ(headlights)๊ฐ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ท ํธ์๋ ๋ธ๋ ์ดํฌ๋ฑ(brake_lights)์ด ์์ต๋๋ค.
์ ์ฝ๋๋ ๋ธ๋ ์ดํฌ๋ฑ์ ์ผ๋ ๋ช ๋ น์ ๋๋ค. ์ด ๋ช ๋ น์ ์คํํ๋ฉด ์ฃผ๋ฏธ ๋ท๋ฉด์ ๋ฑ์ด ์ผ์ง๊ฒ ๋ฉ๋๋ค.
๋ธ๋ ์ดํฌ๋ฑ์ ๋๋ ๋ช ๋ น์ ๋๋ค.
์ฌ๋ฌ๋ถ๋ค์ ์ ์ฝ๋๋ฅผ ํ๋์ฉ ์ ๋ ฅํด์ ์คํ(SHIFT+ENTER)ํ๋ฉด์ ์ฃผ๋ฏธ์ ์ด๋ค LED๊ฐ ๊บผ์ง๊ณ ์ผ์ง๋์ง๋ฅผ ํ์ธํด๋ณด์ธ์.
Last updated