• 6인치 홀센서 BLDC 인휠모터 세트  MS-BL55160-G1

6인치 홀센서 BLDC 인휠모터 세트 MS-BL55160-G1

출력: 250/320W
속도:290/425rpm/min
정격전압:24/36V
추천부하: 210KG

소비자가650,680
판매가616,000
배송정보
0원 (조건부배송) 지역별 추가배송 주문시결제(선결제)
택배
구매안내

아두이노·MCU 제어 예제 코드 — BLC-H3000D(2채널) / BLC-H3000F(4채널) 공용

본 컨트롤러는 MCU/PLC 대접 3선으로 자동 제어가 가능합니다: 황색 = 속도(0~5V 아날로그, 높을수록 빠름) · 브레이크 IO = LOW 제동(정상 구동 시 반드시 HIGH) · 블랙 = 방향(LOW 전환). 로직 레벨은 0~3.4V=Low / 3.5~5V=High이며 MCU와 드라이버 GND는 반드시 공통, 3.3V 보드는 레벨 변환 모듈을 권장합니다. 두 모델 모두 연결된 모터가 동일 명령으로 동시에 구동되며 (D=2모터, F=4모터·2채널 보드 2장), 좌우 바퀴를 따로 제어하는 차동 조향은 지원하지 않습니다 — 개별 제어가 필요하면 단독형 컨트롤러를 모터 수만큼 구성하세요.
· BLC-H3000D 2채널 구매하기 → — 모터 2개 동시 구동 (BL5370/BL12060/BL41105 호환)
· BLC-H3000F 4채널 구매하기 → — 모터 4개 동시 구동 (2채널 보드 2장, BL5370/BL12060 호환)
결선: D9(PWM)→RC 필터(1kΩ 직렬+10µF)→황색(속도 입력이 아날로그 전압 규격이라 PWM은 평활 후 연결), D7→적색(브레이크) / D6→흑색(방향) / GND 공통. 4채널(F)은 같은 3선 신호를 두 보드에 병렬 연결합니다. 모터 3상선은 임의 순서로 연결 후 방향이 반대면 3상 중 2선을 교체하고, 홀선은 미연결로도 구동됩니다(연결 시 홀 5V/GND 극성 확인). 시리얼 모니터(9600bps, "새 줄")에서 f60(정방향 60%) / r40(역방향) / s(속도 0) / b80(브레이크 강도 80% 제동 — 브레이크 IO Low 상태에서 속도 IO 전압이 곧 제동 강도) / g(브레이크 해제)로 조작합니다. 운용 주의(자료 기준): ①속도를 과도하게 낮추면 스톨 보호로 정지할 수 있으며 전원 재인가로 복구됩니다 ②SMPS 사용 시 브레이크 회생전류로 전원 보호 차단이 생길 수 있어 배터리 전원을 권장합니다 ③입력 전압은 22~42V(22V 이하 보호 동작 가능, 48V 불가), 리튬인산철 등 배터리 사용 시 전압을 정확히 맞추고 용량은 여유 있게, 전원 커넥터는 XT60 사용 ④MCU 제어에 이상이 있으면 내장 노브로 정상 구동 여부부터 확인한 뒤 배선·프로그램을 점검하세요. 저속 안정 구동이 필수면 엔코더 사양(주문제작)을 상품문의로 검토받으세요.
//==============================================================
// 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"));
  }
}
작성: MotorBank 기술팀 · 아두이노 우노 기준 · 최종 업데이트: 2026-08-14
97d7fa953f16a8ae7dcad85c5f6de8c8_165426.jpg




비밀번호 인증

비밀번호를 입력해 주세요.

확인