PLEASE SELECT THE DESTINATION COUNTRY AND LANGUAGE :
상품코드 | P3415-M53 |
---|---|
제조사 | CHINA |
판매가 | 7,200원 (부가세 미포함) |
배송비 | 2,800원 (77,000원 이상 구매 시 무료) |
SNS 상품홍보 | |
---|
![]() |
(최소주문수량 1개 이상 / 최대주문수량 0개 이하)
사이즈 가이드수량을 선택해주세요.
위 옵션선택 박스를 선택하시면 아래에 상품이 추가됩니다.
상품명 | 상품수 | 가격 |
---|---|---|
아두이노호환 360도 조그셔틀 엔코더 모듈 (P3415) |
![]() ![]() |
7200 ( |
할인가가 적용된 최종 결제예정금액은 주문 시 확인할 수 있습니다.
회전식 가변저항과는 달리 정방향 또는 반방향으로 일어나는 회전시 출력되는 펄스수를 계산하여 작동하는 원리로써
회전에 제한이 없으며,회전각도가 0에서 364도내를 벗어나게 되면 다시 0으로 리셋되며, 엔코더 상의 버튼을 눌러서 값을 초기화 시키고 다시 0부터 카운팅 할수 있습니다.
ARDUINO TEST CODE int yellowPin = 3; int greenPin = 4; int aPin = 6; int bPin = 7; int buttonPin = 5; int state = 0; int longPeriod = 5000; // Time at green or red int shortPeriod = 700; // Time period when changing int targetCount = shortPeriod; int count = 0; void setup() { pinMode(aPin, INPUT); pinMode(bPin, INPUT); pinMode(buttonPin, INPUT); pinMode(redPin, OUTPUT); pinMode(yellowPin, OUTPUT); pinMode(greenPin, OUTPUT); } void loop() { count++; if (digitalRead(buttonPin)) { setLights(HIGH, HIGH, HIGH); } else { int change = getEncoderTurn(); int newPeriod = longPeriod + (change * 1000); if (newPeriod >= 1000 && newPeriod <= 10000) { longPeriod = newPeriod; } if (count > targetCount) { setState(); count = 0; } } delay(1); } int getEncoderTurn() { // return -1, 0, or +1 static int oldA = LOW; static int oldB = LOW; int result = 0; int newA = digitalRead(aPin); int newB = digitalRead(bPin); if (newA != oldA || newB != oldB) { // something has changed if (oldA == LOW && newA == HIGH) { result = -(oldB * 2 - 1); } } oldA = newA; oldB = newB; return result; } int setState() { if (state == 0) { setLights(HIGH, LOW, LOW); targetCount = longPeriod; state = 1; } else if (state == 1) { setLights(HIGH, HIGH, LOW); targetCount = shortPeriod; state = 2; } else if (state == 2) { setLights(LOW, LOW, HIGH); targetCount = longPeriod; state = 3; } else if (state == 3) { setLights(LOW, HIGH, LOW); targetCount = shortPeriod; state = 0; } } void setLights(int red, int yellow, int green) { digitalWrite(redPin, red); digitalWrite(yellowPin, yellow); digitalWrite(greenPin, green); }
|
상품의 사용후기를 적어주세요.
게시물이 없습니다
상품에 대해 궁금한 점을 해결해 드립니다.
게시물이 없습니다