help me em sáp nộp đồ an rùi but chua bit cach làm có anh nào bit chi em cách lập trình đi .khi lấy signal tu encoder rồi xủ lí nó nhu thế nào đây có ai bit giúp dùm đi
Thông báo
Collapse
No announcement yet.
có ai giúp em cách lập trình điều khiển dc dùng encoder ko?
Collapse
X
-
Hiện tôi có cả schematic, PCB lẫn mã nguồn (asm) để chạy con AT89S52.
Mạch gồm 3 cái SW: Chạy tới, dừng và chạy lui; 3 số LED 7 đoạn hiển thị
xung trong 1 giây. Đão chiều motor bằng relay, điều chỉnh tốc độ motor
theo cách điều rộng khổ xung (PWM). Mạch đơn giản không có hồi tiếp
để ổn định tốc độ và không có giải mã cho bộ encoder (quadrature clock
converter).
Nếu cần thì cho biết.
-
bạn haidien oi! có thể gửi cho mình ct điều chỉnh tốc độ motor theo cách điều rộng khổ xung đc ko? tks nhiều lắm đang cần gấp lắm... có gì send cho tui nhé ( ms.cuong@gmail.com)
Comment
-
Nguyên văn bởi zhiliang Xem bài viếthelp me em sáp nộp đồ an rùi but chua bit cach làm có anh nào bit chi em cách lập trình đi .khi lấy signal tu encoder rồi xủ lí nó nhu thế nào đây có ai bit giúp dùm đi
1. Thứ nhất bạn đưa chân tin hiệu vào chân ngắt ngoài của vi điều khiển (thường được kí hiệu là INT0, INT1, ...)
2. Enable ngắt, có một biến đếm là biến toàn cục, tăng giá trị biến đếm trong chương trình ngắt.
3. Sử dụng một timer, mỗi lần timer ngắt tràn thực hiện xử lý giá trị xung đếm được, gán biến đếm bằng 0 để bắt đầu chu ký mới.
Chúc bạn thành cônghttp://techpal.vn
Chia sẻ công nghệ, cùng thành công
Comment
-
Xử lý tín hiệu encoder? Nếu chỉ làm 1 nhiệm vụ giải mã thì không cần bất cứ ngắt nào
cả. Vấn đề quan trọng ở đây là phase của 2 xung clock từ bộ encoder mà theo lý thuyết
là lệch nhau 90 độ. Người ta phân biệt được chiều chuyển động cũng dựa vào yếu tố
lệch phase này. Thí dụ nếu clk A sớm phase hơn clk B thì chuyển động theo chiều kim
đồng hồ và ngược lại. Mà đã nói đến sớm trễ phase thì phải nói đến thời gian, thời gian
ở đây bao gồm cả quá khứ, hiện tại và tương lai. Phải thỏa đủ 3 điều kiện về thời gian
như trên mới giải mã 1 cách chính xác.
Chương trình điều rộng khổ xung (PWM):
Ta chia chu kỳ của tín hiệu điều rộng xung ra làm 2 phần: Có xung và không có xung.
Ta bắt đầu với độ rộng xung nhỏ nhất là 1/255 (8 bit), phần không có xung là 254/255.
Giờ ta tăng độ rộng xung thêm 1 là 2/255 thì phần khong có xung là 253/255. Cứ thế
mà tiếp tục. Hai phần của một chu kỳ ta nạp vào TH0 hoặc TH1 (tùy theo sử dụng timer
nào). Thí dụ ta đang xử lý ngắt timer_x trong phần có xung của chu kỳ thì ta nạp giá trị
của phần không có xung vào THx (lưu ý là timer phải chạy mode 8 bit auto reload) để
timer chạy đến giá trị nạp trong THx thì nó tạo ra 1 interrupt. Ngược lại thì giá trị có xung
vào THx. Sau đây là đoạn chương trình viết bằng hợp ngữ (nhớ khai báo các
biến, ...):
IsrTimer0:
PUSH ACC
PUSH PSW
JNB RunFlag, MotorOff
MotorOn:
JB MotorFlag, MotorOff ; Nếu motor đang on thì off
CLR PWM ; Ngược lại thì on
MOV TH0, DutyCycleComp ; Giá trị nạp lại cho thời gian ngừng
SETB MotorFlag ; kích hoạt motor (tắt)
POP PSW
POP ACC
RETI
MotorOff:
SETB PWM ;
MOV TH0, DutyCycle ; Giá trị nạp lại cho thời gian kích
CLR MotorFlag ; hoạt motor (chu trình tác động)
POP PSW
POP ACC
RETI
Nếu bạn nào có gì hay hơn thì góp vào cho vui
Comment
-
Cho em xin phan mem voi
Em cung đang làm đồ án như vậy đó
Bác cho em xin giải thuật nhé
mail của em là thanh_ffx@yahoo.com
Comment
-
Theo tôi biết thì chỉ cần nối 2 dây tín hiệu của Encoder vào 2 chân bất kỳ của VDK rồi dùng timer để đếm số xung và tính tốc độ động cơ mà không cần đưa vào ngắt .
Bây giờ nếu muốn biết chiều của động cơ ta phải làm j???
Tôi đưa ra thuật toán thế này các bạn xem có được ko nhé :
- trong Timer ta sẽ đếm số xung (khỏang 1ms chẳng hạn thì kiểm tra các chân tín hiệu một lần)
- trong Timer ta cũng kiểm tra xem xung A , B xung nào có trước rồi set một cái cờ để nhớ kết quả (gọi là cờ chiều quay)
Ai đã làm rồi thì cho ý kiến nhé và nhớ post chương trình lên cho anh em tham khảo
Comment
-
Tôi cũng đang quan tâm về phần điều độ rộng xung để đk motor 1 chiều, bạn haidien có thể send cho tôi cả code asm và schematic được kô? Thank nhiều nhiều !!!!!
Mai: npgiang@gmail.com
Comment
-
Điều khiển tốc độ động cơ DC
Nguyên văn bởi gpsvn Xem bài viếtTôi cũng đang quan tâm về phần điều độ rộng xung để đk motor 1 chiều, bạn haidien có thể send cho tôi cả code asm và schematic được kô? Thank nhiều nhiều !!!!!
Mai: npgiang@gmail.com
Comment
-
Tôi đã từng làm qua mạch đếm xung encoder bằng cách đếm mức cao thấp của xung A và B, kết quả là chạy một chiều thì được nhưng khi đảo chiều nhiều lần (nhất là cần giữ vị trí của servo) thì đếm bị sai.
Tôi đã làm mạch khác đếm theo cạnh xung A, B. Kết quả có thể nói đúng tuyệt đối. Tôi đã ứng dụng để làm bo điều khiển cữ NC cho máy cắt tôn, máy chấn tôn, máy đột dập CNC. Bo có thể điều khiển DC servo hay AC dùng Inverter đều được. Ai quan tâm thì mail cho tôi thi221096@yahoo.comCái gì không mua được bằng tiền thì có thể mua được bằng ... nhiều tiền
Comment
-
Mình cũng đang tìm hiểu cách lập trình điều khiển dc dùng encoder, bạn haidien hoặc ai có bài này có thể gửi cho mình được ko? cám ơn nhiều.
mail: phutuanhd@gmail.com
Comment
-
Không biết là bạn quan tâm cụ thể khâu nào. Khâu điều khiển tốc độ (servo driver) hay là khâu điều khiển vị trí?
Bộ driver mình chỉ sử dụng hàng có sẵn thôi chứ chưa tự làm bộ nào. Nếu bạn thích hãy tham khảo sơ đồ nguyên lý DC Servo driver của Fanuc.
Trong sơ đồ này, bộ F-V converter có thể thay bằng tachometer gắn ở đuôi motor.
Mình chỉ làm được bộ điều khiển vị trí thôi, sử dụng lại DC servo motor và DC servo driver cũ.Cái gì không mua được bằng tiền thì có thể mua được bằng ... nhiều tiền
Comment
-
Nguyên văn bởi haidien Xem bài viếtHiện tôi có cả schematic, PCB lẫn mã nguồn (asm) để chạy con AT89S52.
Mạch gồm 3 cái SW: Chạy tới, dừng và chạy lui; 3 số LED 7 đoạn hiển thị
xung trong 1 giây. Đão chiều motor bằng relay, điều chỉnh tốc độ motor
theo cách điều rộng khổ xung (PWM). Mạch đơn giản không có hồi tiếp
để ổn định tốc độ và không có giải mã cho bộ encoder (quadrature clock
converter).
Nếu cần thì cho biết.
Comment
Bài viết mới nhất
Collapse
-
bởi nguyendinhvanSau bao năm nghiên cứu cái dtvn. Tôi phát hiện công thức này. Các anh em xem đúng bao nhiêu phần trăm nhé !
Chập thì thay. Cháy thì tháo
Làm thì láo. Báo thì hay
May thì khoe. Rủi thì bỏ
Thành tích nhỏ. Báo thành to
Làm cho có. Báo chi li
Sai cả li. Báo...-
Channel: Tâm tình dân kỹ thuật
hôm nay, 00:35 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11có chắc ko b, màn lcd phải có cao áp mới sáng, màn led thì ko có, ko có cáp chuyển đổi thì lắp thế nào đc ??...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 22:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ ý chú là màn oled ấy ạ. Cùng chuẩn lvds cùng độ phân giải thì cắm được ạ. Còn nó mà khác thì hơi khó vì oled các điểm ảnh nó tự phát sáng chứ ko dùng đèn nền như lcd. Cháu chỉ biết đến vậy thôi ạ. Chú muốn nghịch phải tự tìm hiểu kỹ trước khi mua thôi, khó mà ông thợ nào tư vấn vụ này...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 22:14 -
-
Trả lời cho Tự làm máy đo Cuộn cảmbởi bacthoHay đấy bạn ạ. Đây có thể hiểu là máy đo cuộn dây. Tiện đây xin cho hỏi bạn có hiểu rõ về máy nạp rôm pcb 45 của hãng thiên minh không giúp mình cách cài fw của nó với vì mình vừa được anh bạn cho nhưng lại không biết cài fw nên chưa dùng được. Nếu có thể thì bạn giúp mình với...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 21:48 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11màn của mình là LCD , giờ m muốn mua màn LED để thay thế (ko muốn dùng màn LCD nữa) , lên muốn hỏi xem có cáp chuyển đổi nào có thể cắm đc màn LED vào ko , tất nhiên phải có cùng số chân pin với màn cũ rồi . VD: màn cũ là lcd mỏng , 40 pin...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 21:43 -
-
Trả lời cho các bạn giúp mình về file HEX với!!!bởi bacthoBạn vào trang phuclanshop.com ,tìm đến góc kỹ thuật. Tác giả vương khánh hưng nói rất rõ về điều bạn tìm...
-
Channel: Vi điều khiển họ 8051
Hôm qua, 21:21 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ màn hình lcd đều có thể lai cấy cho nhau được hết ạ. Các loại cáp, bo mạch chuyển đổi lvds rất nhìu, với dòng sony còn phải nhổ cả chip nhớ của main cũ đưa lên gỗ thì mới lắp sang máy khác đc, chưa kể các bệnh về màu... ngay cả...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 20:43 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11Màn của e là LCD , e muốn thay thế bằng màn led thì có cáp chuyển đổi nào thực hiện đc việc đó ko nhỉ, nếu có bác mách e với....
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 16:34 -
-
bởi bqvietServo cuối cùng vẫn chỉ là điều chỉnh tốc độ và đọc phản hồi vị trí
Qua cổng song song LPT cổ
https://www.electronicsforu.com/elec...eed-controller
Qua cổng USB - xem thêm đám FT232RL-
Channel: Điện tử công nghiệp
22-11-2024, 15:56 -
Comment