헤이! 이것은 인기 있는 것에 대한 제 의견입니다.디제이프로젝트!
디제
그것은 당신의 컴퓨터에서 서로 다른 애플리케이션의 볼륨을 제어할 수 있게 해주는 물리적인 슬라이더 집합입니다!
제가 그걸 왜 원할까요?
게임을 하고 있는데, 그 게임이 너무 시끄러운 경험이 있나요?
디스코드에서 들을 수 없었던(또는 아마도 너무 잘 들을 수 있었던) 친구들이 있었나요?
‘deej’를 사용하면 게임에서 알트+타브를 사용하지 않고도 개별 애플리케이션 볼륨을 올리거나 내려할 수 있습니다!
제 자신만의 것을 만들려면 무엇이 필요할까요?
- (조금의) 프로그래밍 경험: 프로그래밍은 많지 않지만, 조금 있습니다.
- 부품: 부품 목록은 아래에 포함되어 있습니다.
- 더 많은 정보를 원하시면 프로젝트를 살펴보세요:https://github.com/omriharel/deej
이 프로젝트를 더 쉽게 만들 수 있는 것들, 하지만 그것들은 엄격히 필요하지는 않습니다.
- 용접 ير: 배선 및 구리 나사 인서트 설치에 사용됩니다.
- 용접 경험
- 배선 경험
- 아두이노 경험(솔직히, 이 프로젝트는 마이크로컨트롤러를 프로그래밍하는 법을 배우는 데 아주 좋은 출발점입니다)
- 멀티미터: 당신의 슬라이더의 핀들이 어디에 연결되는지 알아내는 것을 더 쉽게 만든다.
부품 목록
아래 링크 중 일부는 사용할 수 없는 부품으로 연결되어 있고, 이러한 경우에는 대체 부품을 찾아야 합니다.
| 이름 | 링크 | 양 | 노트 |
|---|---|---|---|
| 테일레튼 로보트 ESP32-S3-DevKitC-1 | https://www.amazon.com/dp/B0B6HT7V7P | 1 | BOOT 버튼 아래에 작은 커패시터가 있습니다. 그것을 제거하세요. |
| 슬라이드 포트레오미터 단일 선형형 | https://www.amazon.com/dp/B07QVQ67MV | 5 |
모델 번호는 이것입니다: SC609N 물리적 치수는 15.5mm 폭, 88mm 길이입니다. 샤프트는 약 9mm 폭이며, 나사는 80mm 간격으로 배치되어 있습니다. |
| 브라스 스레드 인서트 | https://www.amazon.com/dp/B0CNVXWQYZ | 8 | |
| M3x6mm 나사 | https://www.amazon.com/dp/B07CMRQ3TB | 10 | 대부분의/모든 M3x6mm 소켓 헤드 캡 스크류가 작동되어야 합니다. |
| M3x12mm 나사 | 당신은 이것들을 거의 어디서나 찾을 수 있습니다. | 4분 | 대부분의/모든 M3x12mm 소켓 헤드 캡 스크류가 잘 작동되어야 합니다. |
위의 부품 외에도, 전자 키트에서 흔히 사용되는 와이어 점퍼 케이블을 구입하는 것을 고려해 보실 수 있습니다. 신중히 계획하면, 어떤 것도 용접하지 않고도 이것을 조립할 수 있습니다.
인쇄된 부품 목록.
蓋: 1
베이스: 1
노브: 5
조립
배선은 지저분하지만, 물리적 조립은 상당히 쉽습니다. 5개의 슬라이드 포트레오미터를 蓋에 넣고 M3x6mm 나사로 고정하세요.
그 후, 브라스 스레드를 베이스에 넣기 위해 용접기나 다른 뜨거운 도구를 사용하세요. 주의: 베이스의 각 모서리에는 2개의 브라스 인서트 위치가 있습니다. 하나는 蓋에 가장 가까운 위쪽에 있고, 하나는 아래쪽에 있습니다. 아래쪽의 인서트는 선택 사항이지만, 위쪽의 인서트는 필수입니다.
브라스 나사 인서트가 삽입된 후, M3x12mm 나사를 사용하여 蓋를 조입니다.
배선
실제로 이는 당신이 구입한 포트े니오미터에 달려 있습니다. 제가 링크한 것들의 경우, 핀 1은 그라운드이고, 핀 2는 변수 핀이며, 핀 3은 3.3VCC입니다.
당신의 포트े니오미터는 조금 다를 수 있습니다. 데이지아두이노 스케치를 마이크로컨트롤러에 업로드한 후 시리얼 모니터를 사용하여 실시간으로 테스트할 수 있습니다.
이 핀들이 보드에서 사용할 수 있는 유일한 핀들은 아니지만, 9-13번 핀들은 모두 서로 가깝고 ADC 핀들입니다 (즉, 이 프로젝트에서 사용할 수 있습니다).
어떤 경우에도, 출력 핀(또는 변수 핀)을 찾아서 ESP32 마이크로컨트롤러의 ADC 핀에 연결해야 합니다. 각 슬라이더는 별도의 ADC 핀에 연결되어야 합니다.(저는 9번부터 13번까지의 핀을 사용하는 것을 권장합니다.)
ADC 핀을 연결하는 것 외에도, 각 슬라이더가 Ground와 VCC에 연결되어 있는지 확인해야 합니다(당신이 구입한 것에 따라 5v나 3.3v를 사용하십시오. 다시 한번, 이것은 시리얼 모니터를 사용하여 테스트할 수 있습니다). 이것을 어떻게 하는지는 당신의 선택입니다.
프로그래밍
디제이(deej) 프로젝트는 슬라이더 읽기가 0에서 1023(포함) 사이가 되기를 기대하고 있지만, ESP32-S3-DevKitC-1은 0에서 4095(포함) 사이로 이동하기 때문에, deej Github 리포지토리에서 찾은 기본 스케치는 바로 작동하지 않습니다
다행히도 해결책은 상당히 간단합니다. 단순히 코드의 한 줄을 바꾸면 됩니다. 저는 정확히 어떤 줄인지 보여주고, 완전성을 위해 스케치 전체를 포함시킬 것입니다.
라인 #23 에서deej-5-슬라이더스-바닐라.ino이것을 바꾸어야 합니다:
아날로그 슬라이더 값들[i] = 아날로그 입력들[i]에서 읽어온 값들입니다.
이 글에서:
아날로그 슬라이더 값들[i] = ((u_int64_t)analogRead(analogInputs[i])) * 1023 / 4095);여기는 완전한 스케치입니다:
const int NUM_SLIDERS = 5; const int analogInputs[NUM_SLIDERS] = {9, 10, 11, 12, 13}; int analogSliderValues[NUM_SLIDERS]; void setup() { for (int i = 0; i < NUM_SLIDERS; i++) { pinMode(analogInputs[i], INPUT); } Serial.begin(9600); } void loop() { updateSliderValues(); sendSliderValues(); // 실제로 데이터를 보내기(항상) // printSliderValues(); // 디버그을 위해만일 골랑으로 프로그래밍하는 데 더 편안하다면 이 대안으로, 4095까지의 값을 받아들이도록 Go 코드를 수정하면 됩니다. 어느 경우에도, 선택은 당신의 것입니다.
모델 소스
