quay encoder

A

agus

Guest
hai .... Tôi có một câu hỏi về encoder quay.Tôi thực sự không hiểu về chức năng của ba Một nhà ga, B và Z của encoder.Từ đọc, tôi thấy rằng các thiết bị đầu cuối A và B được sử dụng để xác định các trục quay của cả hai ở bên phải hoặc bên trái.Chức năng của thiết bị đầu cuối A là gì.

Từ sự hiểu biết của tôi, số lượng đầu ra xung từ encoder quay là phụ thuộc vào các thiết lập của cấu hình mã hóa trong ngôn ngữ lập trình, ví dụ như VC .
Có bao nhiêu loại chức năng được chuẩn bị để thiết lập cấu hình của encoder quay.

Cảm ơn bạn.Xin vui lòng sửa sự hiểu biết của tôi nếu tôi sai.

 
CW: chiều kim đồng hồ
Bên trái: ngược

bạn có thể liên hệ với bạn encoder quay để có thông số kỹ thuật

hoặc

http://zone.ni.com/devzone/conceptd.nsf/webmain/9BCCE7934DACF1298625680700573BC0

 
Nếu bạn chỉ có một làn sóng, và bạn biết ý nghĩa của một chiều dài của một xung, bạn sẽ có thể tính toán một khoảng cách.Tuy nhiên, bạn không biết được hướng bạn đang đi du lịch.
Nếu bạn có 2 sóng, A và B, ví dụ, được chuyển bằng 90 °, bạn có thể không chỉ tính toán khoảng cách đi du lịch bằng cách sử dụng bất kỳ sóng: A hoặc B, mà bởi analizing lên hoặc xuống cạnh của các sóng bạn có thể phân biệt theo hướng luân chuyển này.
Đầu ra Z là một làn sóng đồng hồ bổ sung, thường là ở giai đoạn với sóng A, hiển thị trong cửa sổ khi cả hai A và B là ON.
Để tham khảo so sánh các hình ảnh đính kèm ..
Kính trọng,
IanP

 
TQ khongai và IanP.Các thông tin từ cả hai người bạn giúp đỡ tôi rất nhiều về sự hiểu biết các nguyên tắc cơ bản của encoder quay.Đây là giai đoạn có nghĩa là A và B được sử dụng để xác định tự quay của xe máy hoặc trong hoặc ngược chiều kim đồng hồ.A và Z là trong giai đoạn.Vì vậy, cho phép quay một trong hoàn toàn của xe máy được xác định bởi weither pha A hoặc pha Z. Một điều nữa là về đĩa.Từ những đặc điểm kỹ thuật là nhà cung cấp bằng văn bản 100pulse/rotation.Thus giá trị này có nghĩa là số lượng khe đĩa?Đây là nghĩa là đĩa mỏng có 100 khe mà là một ánh sáng từ đèn LED là chảy qua nó.Questios cuối của tôi là không ai có kinh nghiệm làm việc với encoder quay bằng cách sử dụng Visual C hoặc C .

Cảm ơn bạn.

 
The 100 xung / xoay có nghĩa là A (hoặc B xung cho rằng vấn đề) có 100 chu kỳ (xung) cho mỗi revolutation (mà thường là 100 khe bạn đề cập).Điều này có nghĩa rằng, tùy thuộc vào cách bạn giải mã này, bạn có thể sở hữu 100, 200, 300 hoặc 400 đếm mỗi cuộc cách mạng.Một số phương pháp có thể giải mã được sử dụng.
(1) Các đơn giản nhất (100 xung tính):
- Đợi cho xung A thay đổi từ thấp đến cao.Nếu thay đổi, sau đó tăng truy cập nếu B là thấp, nếu không giảm truy cập.Tượng trưng:
A: L-> H nếu B = 0 thì inc (truy cập) else dec (truy cập)

(2) 200 đếm:
- Như là (1) mà còn chờ xung B để thay đổi từ thấp đến cao.Nếu thay đổi, sau đó tăng truy cập nếu A là cao, nếu không giảm truy cập.Tượng trưng:
A: L-> H nếu B = 0 thì inc (truy cập) else dec (truy cập)
B: L-> H nếu A = 1 thì inc (truy cập) else dec (truy cập)

(3) 200 đếm:
- Như là (1) mà còn chờ xung Một thay đổi từ cao đến thấp.Nếu thay đổi, sau đó tăng truy cập nếu B là cao, nếu không giảm truy cập.Tượng trưng:
A: L-> H nếu B = 0 thì inc (truy cập) else dec (truy cập)
A: H-> L nếu B = 1 thì inc (truy cập) else dec (truy cập)

(4) 300 đếm:
- Như (2) mà còn chờ xung Một thay đổi từ cao đến thấp.Nếu thay đổi, sau đó tăng truy cập nếu B là cao, nếu không giảm truy cập.Tượng trưng:
A: L-> H nếu B = 0 thì inc (truy cập) else dec (truy cập)
B: L-> H nếu A = 1 thì inc (truy cập) else dec (truy cập)
A: H-> L nếu B = 1 thì inc (truy cập) else dec (truy cập)

(5) 400 đếm:
- Như (4) mà còn chờ xung B để thay đổi từ cao đến thấp.Nếu thay đổi, sau đó tăng truy cập nếu A là thấp, nếu không giảm truy cập.Tượng trưng:
A: L-> H nếu B = 0 thì inc (truy cập) else dec (truy cập)
B: L-> H nếu A = 1 thì inc (truy cập) else dec (truy cập)
A: H-> L nếu B = 1 thì inc (truy cập) else dec (truy cập)
B: H-> L nếu A = 0 thì inc (truy cập) else dec (truy cập)Rõ ràng là có thể có một số biến thể (ví dụ mà tín hiệu để kiểm tra - một trong những có thể kiểm tra B thay vì ...). Một
Điểm mấu chốt là phần mềm chỉ có để phát hiện những thay đổi trong mức độ của A (và / hoặc B) tín hiệu và sau đó tăng / giảm theo tín hiệu khác.Điều này cần được không quá lớn là một vấn đề cho các lập trình nào.
Lưu ý rằng bạn không thực sự nead xung chỉ mục (Z hoặc C), trừ khi bạn cần một tín hiệu tham khảo.Symbolical chương trình (5) trong một hình thức rất thô:

Mã số:

OldLevelA = readport (A)

OldLevelB = readport (B)

Số lượt truy cập = 0

lặp lại

LevelA = readport (A)

LevelB = readport (B

nếu LevelA <> OldLevelA sau đó

(Nếu LevelA = 0 sau đó

(Nếu LevelB = 1 sau đó

Số lượt truy cập 1 =

khác

Số lượt truy cập = - 1

)

khác

(Nếu LevelB = 0 sau đó

Số lượt truy cập 1 =

khác

Số lượt truy cập = - 1

)

OldLevelA = LevelA

)

nếu LevelB <> OldLevelB sau đó

(Nếu LevelB = 0 sau đó

(Nếu LevelA = 0 sau đó

Số lượt truy cập 1 =

khác

Số lượt truy cập = - 1

)

khác

(Nếu LevelA = 1 sau đó

Số lượt truy cập 1 =

khác

Số lượt truy cập = - 1

)

OldLevelB = LevelB

)

cho đến khi wheareready
 
Tôi cũng có một dự án sử dụng mã hoá quay (nhưng nó 1000 xung / xoay vòng).Tôi có phải sử dụng AT89C51 PhaseA -> P0.0, PhaseB-> P0.1.Mã số:

nếu (OldLevelA & & P0.0)! sau đó
(
nếu (P0.1) sau đó
Số lượt truy cập
khác
Số lượt truy cập --
)
OldLevelA = P0.0

Tuy nhiên, đôi khi xảy ra misscount.Trong khi mã hóa của tôi đã không xoay vòng, lên của tôi đã đếm được.Tôi nghĩ rằng vì tiếng ồn.Làm thế nào để ngăn chặn misscount xảy ra?
Help me plz!

<img src="http://www.edaboard.com/images/smiles/icon_neutral.gif" alt="Trung lập" border="0" />Thx nhiều

 
Xin chào nông dân,

Thuật toán của bạn không chính xác.Bạn phải nhớ sự cạnh A và đếm lên hoặc xuống ở cạnh B.
Nếu không, bạn không có tính đến sự rung động nhỏ hoặc oscilation trong trục encoder.
Giả sử rằng A và B là cao cao_Oscilation nhỏ ở vị trí góc cạnh bộ mã hóa có thể bắt nguồn chuyển tiếp trong A mà không thay đổi B. Mỗi cạnh tiêu cực của A tìm ra kênh B cao, vì vậy bạn đếm lên không chính xác.

Hy vọng điều này sẽ giúp
Lời chúc mừng tốt đẹp nhất

 
Thx jorgito
Tôi đồng ý với u.Nhưng u có thể cho tôi biết thêm chi tiết.

 

Welcome to EDABoard.com

Sponsor

Back
Top