Chat hỗ trợ
Chat ngay
Chat hỗ trợ
Chat ngay

HCO Việt Nam

Bộ mã hóa encoder E6B2-CWZ6C tạo xung từ 10P/R đến 5000P/R

Mô tả về Encoder E6B2-CWZ6C:

  1. Loại encoder: Đây là một loại encoder roto-incremental, có nghĩa là nó đo sự thay đổi vị trí hoặc góc quay bằng cách đếm các xung xung quanh trục quay của nó.
  2. Độ phân giải: Encoder E6B2-CWZ6C có thể có nhiều độ phân giải khác nhau, nhưng đa số các phiên bản cung cấp độ phân giải đủ để đáp ứng các yêu cầu cụ thể của ứng dụng.
  3. Kết nối: Thường có các phiên bản có đầu ra tín hiệu thông qua các chân hoặc cổng cắm tiêu chuẩn, giúp dễ dàng tích hợp vào các hệ thống điều khiển.
  4. Độ chính xác và độ bền: Encoder E6B2-CWZ6C thường có độ chính xác cao và độ bền tốt, giúp nó phù hợp cho các ứng dụng công nghiệp yêu cầu sự ổn định và đáng tin cậy.

\"\"

Ứng dụng:

  1. Máy móc công nghiệp: Encoder E6B2-CWZ6C thường được sử dụng trong các máy móc công nghiệp để đo vị trí và vận tốc của các bộ phận hoặc công cụ.
  2. Máy công cụ: Trong các máy tiện, máy phay và máy cắt khác nhau, encoder này có thể được sử dụng để đo góc quay của trục và điều khiển chính xác vị trí và tốc độ.
  3. Thiết bị tự động hóa: Trong các hệ thống tự động hóa công nghiệp, encoder E6B2-CWZ6C có thể được sử dụng để cung cấp phản hồi về vị trí và vận tốc của các phần tử điều khiển, giúp điều khiển và điều chỉnh hoạt động của hệ thống.

Thông số kỹ thuật chung của Encoder Omron E6B2 – CWZ6C

  • Pha đầu ra: A,B và Z
  • Đường kính trục: 6mm
  • Đường kính thân: 40mm
  • Điện áp hoạt động: 5-24VDC
  • Dòng tiêu thụ: max 80mA
  • Tần số đáp ứng: 100 KHz.
  • Tiêu chuẩn: IEC 60529 IP50
  • Chiều dài cable: 2m
  • Trọng Lượng: 195g
  • Nhiệt độ làm việc: -10 ~ 70C
  • Độ ẩm làm việc(% RH): 35%-85%
  • Là loại: tương đối
  • Loại ngõ ra: NPN cực thu hở (cần mắc trở kéo lên VCC để tạo mức cao (High))

Code sử dụng Arduino để đọc tín hiệu của Encoder Omron E6B2 – CWZ6C


volatile unsigned int temp, counter = 0; //This variable will increase or decrease depending on the rotation of encoder
void setup()
{
    Serial.begin(9600);
    pinMode(2, INPUT_PULLUP); // internal pullup input pin 2
    pinMode(3, INPUT_PULLUP); // internalเป็น pullup input pin 3
                              //Setting up interrupt
    //A rising pulse from encodenren activated ai0(). AttachInterrupt 0 is DigitalPin nr 2 on moust Arduino.
    attachInterrupt(0, ai0, RISING);
    //B rising pulse from encodenren activated ai1(). AttachInterrupt 1 is DigitalPin nr 3 on moust Arduino.
    attachInterrupt(1, ai1, RISING);
}
void loop()
{
    // Send the value of counter
    if (counter != temp)
    {
        Serial.println(counter);
        temp = counter;
    }
}
void ai0()
{
    // ai0 is activated if DigitalPin nr 2 is going from LOW to HIGH
    // Check pin 3 to determine the direction
    if (digitalRead(3) == LOW)
    {
        counter++;
    }
    else
    {
        counter--;
    }
}
void ai1()
{
    // ai0 is activated if DigitalPin nr 3 is going from LOW to HIGH
    // Check with pin 2 to determine the direction
    if (digitalRead(2) == LOW)
    {
        counter--;
    }
    else
    {
        counter++;
    }
}