BLC-H3000, BLC-H3000D, BLC-H3000F, BLC-H350D
드라이버 제품과 호환 가능합니다.
//==============================================================// MotorBank BLC-H3000 시리즈(D: 2채널 / F: 4채널) 인휠 컨트롤러 아두이노 공용 예제 V1.2// 근거: 제품 상세 IO 포트 신호 설명·주의사항(확정 자료) — 확정 사항만 구현// 보드: Arduino Uno//// [구조 이해 - 중요]// BLC-H3000D(2채널): 모터 2개를 동일 명령으로 동시 제어 (보드 1장)// BLC-H3000F(4채널): 2채널 보드 2장 구성, 모터 4개를 동일 명령으로 동시 제어// → 어느 쪽도 좌우 바퀴 개별 속도 차동 조향은 불가. 개별 제어가 필요하면 단독형 컨트롤러 여러 대 사용// 본 예제는 보드 1장의 MCU 3선을 제어하며, 4채널(2보드)은 같은 신호를 두 보드에 병렬 연결합니다.//// [MCU IO 3선 (제품 자료 확정)]// 황색(속도) : 0~5V 아날로그 전압, 높을수록 빠름// 브레이크 IO : LOW = 제동(속도 IO 전압이 높을수록 제동 강도 증가) / 정상 구동 시 반드시 HIGH// 블랙(방향) : LOW(0V) = 회전 방향 전환// 로직 레벨 : 0~3.4V = Low / 3.5~5V = High → 3.3V 보드는 레벨 변환 모듈 권장// GND : MCU와 드라이버 GND 반드시 공통 (자료 명시)//// [아두이노 결선]// D9(PWM) -> RC 필터 -> 황색(속도) * 자료가 "0~5V 아날로그 전압" 입력을 명시하므로// PWM은 RC 필터(1kΩ 직렬 + 10uF 병렬 to GND)로 평활해 아날로그 전압으로 인가// D7 -> 적색(브레이크) D6 -> 흑색(방향) GND 공통//// [모터 결선] 3상선은 임의 순서 연결 후 회전 방향이 반대면 3상 중 2선 교체.// 홀선은 미연결 가능(지능형). 연결 시 홀 5V/GND 극성 확인 필수.//// [운용 주의 (자료 확정)]// - 속도를 과도하게 낮추면 스톨 보호로 정지할 수 있음 → 전원 재인가로 복구// - SMPS 사용 시 브레이크 회생전류로 전원 보호 차단 가능 → 배터리 전원 권장// - 입력 전압 22~42V (22V 이하 보호 동작 가능), 48V 사용 불가// - MCU 제어 이상 시 내장 노브로 정상 동작 확인 후 배선·프로그램 점검//// [시리얼 모니터 사용법] (9600bps, "새 줄" 설정)// f60 : 정방향 속도 60% r40 : 역방향 40% s : 속도 0(관성 정지)// b80 : 브레이크 강도 80%로 제동(0~100, 속도 IO 전압=제동 강도) g : 브레이크 해제//==============================================================const int SPEED_PIN = 9; // PWM -> RC 필터 -> 황색const int BRAKE_PIN = 7; // 적색const int DIR_PIN = 6; // 흑색void setSpeed(int pct) { analogWrite(SPEED_PIN, map(constrain(pct, 0, 100), 0, 100, 0, 255)); } void setup() { pinMode(BRAKE_PIN, OUTPUT); pinMode(DIR_PIN, OUTPUT); setSpeed(0); digitalWrite(BRAKE_PIN, HIGH); // 주행 가능 상태(제동 해제) digitalWrite(DIR_PIN, HIGH); // 정방향 Serial.begin(9600); Serial.println(F("BLC-H3000 ready. f60 r40 s b80 g")); } void loop() { if (!Serial.available()) return; String cmd = Serial.readStringUntil('\n'); cmd.trim(); if (cmd.length() == 0) return; char c = cmd.charAt(0); int v = cmd.substring(1).toInt(); switch (c) { case 'f': digitalWrite(BRAKE_PIN, HIGH); digitalWrite(DIR_PIN, HIGH); setSpeed(v); Serial.print(F("FWD ")); Serial.print(v); Serial.println('%'); break; case 'r': digitalWrite(BRAKE_PIN, HIGH); digitalWrite(DIR_PIN, LOW); setSpeed(v); Serial.print(F("REV ")); Serial.print(v); Serial.println('%'); break; case 's': setSpeed(0); Serial.println(F("STOP (speed 0)")); break; case 'b': setSpeed(v > 0 ? v : 50); digitalWrite(BRAKE_PIN, LOW); // 속도 IO 전압 = 제동 강도 Serial.print(F("BRAKE ")); Serial.print(v > 0 ? v : 50); Serial.println('%'); break; case 'g': setSpeed(0); digitalWrite(BRAKE_PIN, HIGH); Serial.println(F("BRAKE OFF (speed 0)")); break; default: Serial.println(F("? f60 r40 s b80 g")); }}
관통홀형 모터 설치 방법
1. 70 / 83 / 90 규격 모터는 중앙에 관통 홀이 있는 구조로, 모터 중앙부는 회전하지 않고 외부 하우징만 회전합니다.
2. 모터 중앙의 원형 관통 홀 직경은 Ø8mm이며, 모터 전선이 나오는 측에는 12 × 12mm, 깊이 6mm의 사각 홀이 있습니다.
이 사각 홀은 모터 중앙부의 회전을 방지하여 모터 전선이 꼬이거나 단선되는 것을 방지하기 위한 고정용 구조입니다.
3. 따라서 모터 장착 시 직경 Ø8mm의 별도 고정축을 모터 중앙 홀에 관통시켜 고정해야 합니다.
또한 고정축 한쪽에는 12 × 12mm, 높이 6mm의 사각 돌출부를 가공하여 모터의 사각 홀과 맞물리도록 설치해야 합니다.
※ 주의: 모터 중앙부가 회전하지 않도록 고정축과 사각 돌출부를 정확하게 맞춰 장착하십시오.


상품이 장바구니에 담겼습니다.
바로 확인하시겠습니까?
상품이 찜 리스트에 담겼습니다.
바로 확인하시겠습니까?