lightizm β“’ all rights reserved. thanks.

Built with Indexhibit


"Firmata μ‚¬μš©μœΌλ‘œ LFO둜 LEDλ₯Ό μΌœλ‹€!"

Firmata ν”„λ‘œν† μ½œμ€ midi μž₯비에 μ‚¬μš©ν•˜λŠ” μ‹œλ¦¬μ–Όν†΅μ‹  ν”„λ‘œν† μ½œμ„ λ³€ν˜•ν•˜μ—¬ 컴퓨터와 μ•„λ‘μ΄μ˜€κ°„μ— 데이터λ₯Ό μ£Όκ³  λ°›κ²Œ ν•˜λŠ” ν”„λ‘œν† μ½œμž…λ‹ˆλ‹€. Firmataλ₯Ό μ΄μš©ν•˜λ©΄, VVVVμ—μ„œ μ•„λ‘μ΄λ…Έμ˜ I/Oλ₯Ό μ œμ–΄ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μ‰½κ²Œ μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ»΄ν“¨ν„°λŠ” 인터넷과 연결이 μš©μ˜ν•˜λ―€λ‘œ, 아두이노 I/Oλ₯Ό μ›κ²©μœΌλ‘œ λͺ¨λ‹ˆν„°λ§ ν•˜κ±°λ‚˜ μ œμ–΄ν•˜λŠ” ν”„λ‘œμ νŠΈλ„ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

[κΈ°λ³Έμ‚¬μš©λ°©λ²•]
- Arduino UNOλ₯Ό USBμΌ€μ΄λΈ”λ‘œ μ—°κ²°ν•œλ‹€μŒ μ•„λž˜ 경둜의 Firmataλ₯Ό μ—…λ‘œλ“œ ν•©λ‹ˆλ‹€.
Arduino > File > Examples > Firmata > StandardFirmata, Upload!
- v4 μ—μ„œλŠ” Arduino (Devices StandardFirmata 2.x) λ…Έλ“œ Helpλ₯Ό μ°Έκ³ ν•©λ‹ˆλ‹€.

[예제]
LFO둜 6개의 LEDλ₯Ό Fade(PWM)ν•˜λŠ” 예제λ₯Ό μ§„ν–‰ν•©λ‹ˆλ‹€.

1. 와이어링은 μ•„λž˜μ™€ 같이, 디지털핀 3, 5, 6, 9, 10, 11에 LEDλ₯Ό μ—°κ²°ν•©λ‹ˆλ‹€.

2. μ•„λ‘μ΄λ…ΈλŠ” μΆ”κ°€ μ½”λ“œ μž‘μ—…μ„ ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. StandardFirmataλ₯Ό μ—…λ‘œλ“œ ν•©λ‹ˆλ‹€.

3. Arduino λ…Έλ“œμ— 각자의 ν™˜κ²½μ— λ§žλŠ” Comport λ„˜λ²„λ‘œ λ³€κ²½ ν›„, Enabledλ₯Ό μž‘λ™!

(1) Arduino의 μž‘λ™ 전에 ν•΄μ•Όν•  일이 μžˆμŠ΅λ‹ˆλ‹€. 첫째, Pin Modes에 ν•΄λ‹Ήν•€μ˜ 역할을 μ •ν•΄μ€λ‹ˆλ‹€.
(2) λ‘˜μ§Έ, 각자의 ν™˜κ²½μ— λ§žλŠ” Comport λ„˜λ²„λ‘œ λ³€κ²½ν•΄μ•Όν•©λ‹ˆλ‹€.
(3) κ·Έ λ‹€μŒ, Enabledλ₯Ό μΌ­λ‹ˆλ‹€.
(4) Spread(20)λ₯Ό λ°›μ•„ μž‘λ™ν•©λ‹ˆλ‹€. OUTPUT은 Boolean, PWM은 0~1μ‹ ν˜Έλ₯Ό λ³΄λ‚΄μ£Όλ©΄λ©λ‹ˆλ‹€.
Spread(20)λ₯Ό μœ μ§€ν•œμ±„λ‘œ Slice 3, 5, 6, 9, 10, 11 에 0~1을 λ³΄λ‚΄λ €κ³ ν•©λ‹ˆλ‹€.
(5) SetSliceλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.
(6) SetSlice의 Index에 3, 5, 6, 9, 10, 11 λ₯Ό λ„£μ–΄μ€λ‹ˆλ‹€.
(7) SetSlice의 Input에 LFO의 0~1λ₯Ό λ°œμƒμ‹œμΌœ μ• λ‹ˆλ§€μ΄μ…˜μ„ λ„£μ–΄μ€λ‹ˆλ‹€.

LFO의 Phase에 LinearSpread둜 6등뢄을 ν•΄μ£Όλ©΄, 6λ“±λΆ„μ˜ μ‹œμž‘μ μ„ μ μš©λ˜μ–΄ 6개의 LEDκ°€ 순차적으둜 밝기가 μ œμ–΄λ©λ‹ˆλ‹€.

patch: 03_LFO+Fade (PWM)_II.zip
μ €μž: SangChul.Nam
μ°Έκ³ : http://firmata.org/, https://youtu.be/RQ54h88ptmc
ν‚€μ›Œλ“œ: Arduino, vvvv, Firmata, PWM, LFO
ν™˜κ²½: Windows8.1_x64/vvvv45beta34/Arduino 1.6.5/ Arduino UNO