์ŠคํŒ€ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ด์šฉํ•œ ๋ ˆ๊ณ  ๋ชจํ„ฐ ๋ฌด์„  ์ œ์–ด

์ŠคํŒ€ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ด์šฉํ•œ ๋ ˆ๊ณ  ๋ชจํ„ฐ ๋ฌด์„  ์ œ์–ด

์ €๋Š” ์–ด๋ ธ์„ ๋•Œ ํ•ญ์ƒ ๋ฉ‹์ง„ ๊ฒƒ๋“ค์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ ˆ๊ณ  โ€‹โ€‹ํ…Œํฌ๋…ธ ์„ธํŠธ๋ฅผ ๊ฐ–๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ ˆ๊ณ  ๋ธ”๋ก์„ ๋ฐœ์‚ฌํ•˜๋Š” ํšŒ์ „ ํฌํƒ‘์„ ๊ฐ–์ถ˜ ์ž์œจ ํƒฑํฌ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๊ทธ๋•Œ๋Š” ๊ทธ๋Ÿฐ ์„ธํŠธ๊ฐ€ ์—†์—ˆ์–ด์š”.

๊ทธ๋ฆฌ๊ณ  ์ผ๋ฐ˜ ๋ ˆ๊ณ  ๋ธ”๋ก๋„ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ์นœ๊ตฌ ์ค‘ ํ˜•์ด ์ด๋ ‡๊ฒŒ ๊ฐ’๋น„์‹ผ ์žฅ๋‚œ๊ฐ์„ ๋‹ค ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์นœ๊ตฌ๊ฐ€ ํ•œ ๋ช… ์žˆ์—ˆ์–ด์š”.

๊ทธ๋ฆฌ๊ณ  ์ง€๊ธˆ ๋‚˜์—๊ฒŒ๋Š” ๊ทธ ๋‚˜์ด๋Œ€์˜ ์•„๋“ค์ด ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋Š” ๋ฒฝ์— ๋ถ€๋”ชํž ๋•Œ๊นŒ์ง€ ์–ด๋ฆฌ์„๊ฒŒ ์•ž์œผ๋กœ ๋‚˜์•„๊ฐ€๋Š” ํƒฑํฌ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค ๐Ÿ™‚

์ด์ œ ESP32์™€ ๋‚ฉ๋•œ ์ธ๋‘์˜ ๋งˆ๋ฒ•์„ ์‚ฌ์šฉํ•  ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด์— ์ ํ•ฉํ•œ ๋ฆฌ๋ชจ์ฝ˜์„ ์กฐ๋ฆฝํ•ด ๋ด…์‹œ๋‹ค!

์•„๋‹ˆ์š”, ๋ฌผ๋ก  ๊ทธ๋Ÿฐ ๋ฆฌ๋ชจ์ฝ˜์˜ ์กด์žฌ์— ๋Œ€ํ•ด์„œ๋Š” ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ ์ค‘ ์–ด๋Š ๊ฒƒ๋„ ๋‚˜์—๊ฒŒ ์™„๋ฒฝํ•˜๊ฒŒ ์–ด์šธ๋ฆฌ๋Š” ๊ฒƒ์€ ์—†์Šต๋‹ˆ๋‹ค. 80๋…„๋Œ€ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•œ ์ ์™ธ์„ ์ด๊ฑฐ๋‚˜ ๋„ˆ๋ฌด ํฝ๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ๋น„์‹ผ ๊ฒƒ. ๊ทธ๋ฆฌ๊ณ  ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€, ์ €๋Š” ์ œ ์•„๋“ค์—๊ฒŒ ๊ทธ๋“ค ์ค‘ ์–ด๋–ค ๊ฒƒ๋„ ๋งํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค: "๋‚ด๊ฐ€ ํŠน๋ณ„ํžˆ ๋‹น์‹ ์„ ์œ„ํ•ด ํ–ˆ์–ด์š”!"

๊ทธ๋Ÿฌ๋‹ˆ ๋ชจ๋‘๋ฅผ ์ง€๋ฐฐํ•  ์ˆ˜ ์žˆ๋Š” ์ƒˆ๋กญ๊ณ  ํ–ฅ์ƒ๋œ ๋ฆฌ๋ชจ์ฝ˜์„ ๋งŒ๋“ค์–ด ๋ด…์‹œ๋‹ค!

์ŠคํŒ€ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ด์šฉํ•œ ๋ ˆ๊ณ  ๋ชจํ„ฐ ๋ฌด์„  ์ œ์–ด

์„ฑ๋ถ„ :

  • ESP32-WROOM-32D | WiFi, BLE ๋ฐ I/O๊ฐ€ ํฌํ•จ๋œ ํ”„๋กœ์„ธ์„œ - XNUMX๊ฐœ๋ฅผ ์ œ์–ดํ•˜๊ธฐ์— ์ถฉ๋ถ„ํ•จ ๋ชจํ„ฐ ะธ ์ฃผ๋„์˜.
  • DRV8833 | ๋ชจํ„ฐ์— ์ถฉ๋ถ„ํ•œ ์ „๋ ฅ์„ ๊ณต๊ธ‰ํ•˜๋Š” ์ด์ค‘ H ๋ธŒ๋ฆฌ์ง€.
  • TPS62162 | WSON-17 8x2mm ์ผ€์ด์Šค๋ฅผ ๋‚ฉ๋•œํ•  ๋•Œ ์žฌ๋ฏธ๋ฅผ ์œ„ํ•ด ์ „์••์„ 2V๋กœ ๋‚ฎ์ถฅ๋‹ˆ๋‹ค.
  • CP2104 | ESP32 ํ”„๋กœ๊ทธ๋ž˜๋ฐ์šฉ
  • ์ปค๋„ฅํ„ฐ ๋ชจํ„ฐ์™€ ๋‹ค์ด์˜ค๋“œ๋ฅผ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ „์„ ์„ ์ž๋ฅด๊ณ  ๋ฐ”๋‹ฅ์— ๋‚ฉ๋•œํ•˜๊ณ  ์ƒ๋‹จ์— ๋ ˆ๊ณ  ์ปค๋„ฅํ„ฐ๋ฅผ ๋ถ™์ž…๋‹ˆ๋‹ค.

์ด ๋ชจ๋“  ๊ฒƒ์€ ๋‹ค์†Œ ์ž‘์€ ๋ณด๋“œ์— ๋ฐฐ์น˜๋ฉ๋‹ˆ๋‹ค. EasyEDA ํŽธ์ง‘๊ธฐ์— ํ‘œ์‹œ๋˜๋Š” ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ŠคํŒ€ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ด์šฉํ•œ ๋ ˆ๊ณ  ๋ชจํ„ฐ ๋ฌด์„  ์ œ์–ด

์ œ๋ชฉ ์‚ฌ์ง„์— ๋ณด์ด๋Š” ์ „์„ ์€ ์ผ๋ถ€ ์˜ค๋ฅ˜๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ USB์—์„œ ์ „์›์„ ๊ณต๊ธ‰ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ชจํ„ฐ๋กœ๋Š” ๋ถ€์กฑํ•  ์ˆ˜๋„ ์žˆ๋Š”๋ฐ, ์•„์‰ฝ๊ฒŒ๋„ ์•„์ง ์ค‘๊ตญ์—์„œ ์—ฐ๋ฝ์ด ์˜ค์ง€ ์•Š๋„ค์š”. ๋”ฐ๋ผ์„œ ๋จผ์ € LED์˜ ์ž‘๋™์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์ง„์˜ ์•„๋ฆ„๋‹ค์›€์„ ์œ„ํ•ด ๋ชจํ„ฐ์˜ ์ปค๋„ฅํ„ฐ๋ฅผ ๋ณด๋“œ์— ์˜ฌ๋ ค ๋†“์•˜์Šต๋‹ˆ๋‹ค.

๋‚ด ๋ณด๋“œ ๋ฒ„์ „ 1.1(EasyEDA์— ์ด๋ฏธ ์žˆ๋Š” ๋ฒ„์ „ 1.2์™€๋Š” ๋‹ค๋ฆ„)์—๋Š” LED๊ฐ€ ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋‘ ๊ฐœ์˜ ์—ญ๋ณ‘๋ ฌ ๋‹ค์ด์˜ค๋“œ๋ฅผ ์ถœ๋ ฅ์— ๋‚ฉ๋•œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํžˆ ์‚ดํŽด๋ณด๋ฉด ๋น„๋””์˜ค์—๋Š” ํ•œ ์Œ์˜ ๋‹ค์ด์˜ค๋“œ 0603์ด ๋ฒˆ๊ฐˆ์•„ ์ผœ์ง€๋Š” ๋ชจ์Šต์ด ๋‚˜ํƒ€๋‚˜ ์ „์ง„/ํ›„์ง„ ์ด๋™์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๋ฆฌ๋ชจ์ฝ˜์˜ ๊ฒฝ์šฐ ์ฒ˜์Œ์—๋Š” ๋ฒ„ํŠผ์ด ์žˆ๋Š” ์ถ”๊ฐ€ ๋ณด๋“œ์™€ ํด๋ž˜์‹ ๋ฆฌ๋ชจ์ฝ˜์ธ ๋˜ ๋‹ค๋ฅธ ESP32๋ฅผ ์กฐ๋ฆฝํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ Steam Controller์— BLE(Bluetooth Low Energy) ์ž‘๋™ ๋ชจ๋“œ๊ฐ€ ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค์ด ๊ธฐ์–ต๋‚ฌ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ๊ณ , ๋ช‡ ์‹œ๊ฐ„ ํ›„์— ์ปจํŠธ๋กค๋Ÿฌ๋กœ๋ถ€ํ„ฐ ํŒจํ‚ท์„ ์ˆ˜์‹ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด SteamController๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” HID ์žฅ์น˜๋ฅผ ์ฐพ์•„์„œ ์—ฐ๊ฒฐํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ Valve์˜ ๋ฌธ์„œํ™”๋˜์ง€ ์•Š์€ ์„œ๋น„์Šค์™€ ๋ช‡ ๊ฐ€์ง€ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ๋ฌธ์„œํ™”๋˜์ง€ ์•Š์€ ๋ช…๋ น, ํŒจํ‚ท ์ „์†ก์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ŠคํŒ€ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ด์šฉํ•œ ๋ ˆ๊ณ  ๋ชจํ„ฐ ๋ฌด์„  ์ œ์–ด

๋˜ํ•œ ์ˆ˜๋™์œผ๋กœ ๋ถ„์„ํ•œ ๋ฌธ์„œํ™”๋˜์ง€ ์•Š์€ ๋ณด๊ณ ์„œ ํ˜•์‹๋„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์ŠคํŒ€ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ด์šฉํ•œ ๋ ˆ๊ณ  ๋ชจํ„ฐ ๋ฌด์„  ์ œ์–ด

์•ฝ ํ•œ ์‹œ๊ฐ„ ํ›„์— ํ”Œ๋ž˜๊ทธ์™€ ๊ฐ’์˜ ์˜๋ฏธ๊ฐ€ ๋ช…ํ™•ํ•ด์กŒ๊ณ  Steam ์ปจํŠธ๋กค๋Ÿฌ์™€ ESP32๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ LED๋ฅผ ๊นœ๋ฐ•์ด๋Š” ๋ฐ ์„ฑ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค. ฬ…_(ใƒ„)_/ฬ…

ํŒŒ์ผ

v1.0 : "์žฌํŒ ์ ‘๊ทผ ๋ฐฉ์‹"
- ์ž˜๋ชป๋œ ์ „์•• ์กฐ์ •๊ธฐ๋ฅผ ์„ ํƒํ•œ ์ฒซ ๋ฒˆ์งธ ์˜ต์…˜์ž…๋‹ˆ๋‹ค. TPS62291์€ ์ตœ๋Œ€ 6V์˜ ์ „์••๋งŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ณ‘๋ ฌ๋กœ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ์žฅ์น˜๊ฐ€ 9V์—์„œ ์ž‘๋™ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์žŠ์–ด๋ฒ„๋ ธ์Šต๋‹ˆ๋‹ค.

v1.1 : "์ถฉ๋ถ„ํ•˜๋‹ค"
- ์ด ์˜ต์…˜์€ ๋น„๋””์˜ค์— ํ‘œ์‹œ๋˜๋ฉฐ ๋ชจ๋“  ๊ฒƒ์ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

v1.2 : "๊ฒฐ์ •์ ์ธ"
- ์ถœ๋ ฅ์— ํ‘œ์‹œ LED๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ๋ณด๋“œ์˜ ํฌ๊ธฐ์™€ ๋ ˆ์ด์•„์›ƒ์„ ์ตœ์ ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์˜ ์งง์€ ๋น„๋””์˜ค๋Š” ์—ฐ๊ฒฐ ๋‹จ๊ณ„(์ „์›์„ ์ผ  ํ›„ 1~3์ดˆ)์™€ ๋ชจํ„ฐ ์ถœ๋ ฅ ์ œ์–ด๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๋ ˆ๊ณ ์˜ ์ปค๋„ฅํ„ฐ๊ฐ€ ์•„์ง ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํฐ์ƒ‰ ์ง์‚ฌ๊ฐํ˜•์œผ๋กœ ํ‘œ์‹œ๋œ ๋‹ค๋ฅธ ์ปค๋„ฅํ„ฐ ์˜†์˜ ๋นˆ ๊ณต๊ฐ„์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ์•„๋“ค์€ ์ด์ œ ์ •๊ธฐ์ ์œผ๋กœ ์ด ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž์‹ ์ด ์กฐ๋ฆฝํ•œ ๊ธฐ๊ณ„๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.

์ŠคํŠธ๋ ˆ์Šค ํ…Œ์ŠคํŠธ ์ค‘์— ๋‹จ ํ•œ ๊ฐ€์ง€ ๋ฌธ์ œ์— ์ง๋ฉดํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ชจํ„ฐ ๋“œ๋ผ์ด๋ฒ„์˜ "๋น ๋ฅธ ๊ฐ์‡ " ๋ชจ๋“œ(๋น ๋ฅธ ๊ฐ์‡ )๊ฐ€ ๊ฐ€์žฅ ์ž˜ ์ž‘๋™ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐ, ์ด๋กœ ์ธํ•ด ๋ช‡ ์ดˆ ๋™์•ˆ ์ž‘๋™ํ•œ ํ›„ ๋ชจํ„ฐ ์†๋„๊ฐ€ ํฌ๊ฒŒ ๋–จ์–ด์กŒ์Šต๋‹ˆ๋‹ค. . ๊ทธ๋ž˜์„œ "๋Š๋ฆฐ ๊ฐ์‡ "[๋Š๋ฆฐ ๊ฐ์‡ ]๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์ฝ”๋“œ๋ฅผ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค.

์ŠคํŒ€ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ด์šฉํ•œ ๋ ˆ๊ณ  ๋ชจํ„ฐ ๋ฌด์„  ์ œ์–ด

DRV๊ฐ€ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€, ์™œ ๋ชจํ„ฐ๊ฐ€ ์ฒ˜์Œ์—๋Š” ๋น ๋ฅด๊ฒŒ ํšŒ์ „ํ•˜๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ 10์ดˆ ํ›„์—๋Š” ์ ์ฐจ ์†๋„๊ฐ€ ๋Š๋ ค์ง€๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์•„๋งˆ๋„ MOSFET์ด ๊ฐ€์—ด๋˜๊ณ  ์ €ํ•ญ์ด ๋„ˆ๋ฌด ๋งŽ์ด ์ƒ์Šนํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Arduino๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ด ์˜ˆ๊ฐ€ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์‰ฝ๊ฒŒ ์˜๊ฐ์„ ์ฃผ๊ณ  ์ž๋…€์—๊ฒŒ ์ „์ž ์ œํ’ˆ์„ ์†Œ๊ฐœํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€