Lệnh này bạn phải dùng PLC thật để load chương trình xuống chạy thử. Trên phần mềm Sim S7 200 không mô phỏng được thì phải
Printable View
mô phỏng bình thưởng cho cả shift và rotate.Cấu hình trong plc simu CPU type là PLC 226 là mô phỏng được
Chắc tại thằng simu nó yêu tui.Nên tui làm được=))http://www.youtube.com/watch?v=5w3IxfdUN50
cho mình hỏi chút nha:
thiết bị của mình phát xung nhưng chỉ có 12vdc thôi. mình dùng con opto nào để kích về PLC đọc 24vdc. (nếu dùng opto có bền không?)
thanks :)
zậy bạn gởi lên sơ đồ nguyên lý đi. mình đang cần.
Cấu trúc byte SMB47 như sau:
SM47.0 Kiểu reset cho tín hiệu xóa tại cổng I1.0
SM47.1 Kiểu start cho tín hiệu kích tại cổng I1.1
SM47.2 Tần số đếm của HSC1
SM47.3 Chiều đếm: 0 đếm lùi, 1 : đếm lên
SM47.4 Cho phép đổi chiều đếm, 0: không cho phép, 1: cho phép
SM47.5 Cho phép sửa đổi giá trị đặt trước, 0: không cho phép, 1: cho phép
SM47.6 Cho phép sửa đổi giá trị đếm tức thời, 0: không cho phép, 1: cho phép
SM47.7 1- cho phép kích HSC1, 0 – cho phép hủy HSC1
như vậy với mỗi giá trị trong SMB47 sẽ cho bạn lựa chọn các trạng thái làm việc thôi. Ví dụ nhé. khi nó bằng 16#F8 thì nó cho những bit nào bằng 1 những bit nào bằng 0. dò lên cái bảng trên kia là bit thôi :)
thế này nhé, 1 byte bạn có 8 bit và lưu giữ giá trị lớn nhất là 255 hoặc nếu là số BCD lớn nhất là FF. từ bit 0 - bit 7
giả sử SMB47: 0 Tương ứng với các bit 00000000
SMB47: 1 tương ứng với các bit 00000001
....
SMB46: FF tướng ứng với các bit 11111111
Vậy bạn đã xác định được chưa ?cái này là mã BCD thui mà
có bác nào biết cách mô phỏng bộ đếm tốc độ cao ko,giúp e với!!!!
Mình chưa làm ứng dụng như bạn xong theo mình. Bạn quay xem cái động cơ của bạn quay 90 độ thì encoder đọc đc bao nhiêu xung, và tính đến cả quán tính nữa nhé, bạn đếm xung đó vào PLC là đk đc thôi, còn điều khiển dừng góc mong muốn thì tôi hay dùng động cơ bước. hjjj
Về vấn đề này,cũng không hẳn gọi là điều khiển vị trí nữa bạn(theo mình là thế).Vấn đề này mình đã làm theo phương pháp như sau :Để điều khiển động cơ dừng lại ở 1 góc quay xác định cần co 3 giai đoan.Giai đoạn thứ 1 là giảm tốc độ thật nhanh xuống tốc độ mức thấp LSP.Giai đoạn 2 là dò vị trí góc quay đến vị trí cần stop.Ví dụ,bạn cần stop ở góc quay 150 độ,thì có thể bạn dò đến 90 độ rồi cho động cơ dừng .quãng đường từ 90 độ đến 150 độ chính là quãng đường cố định mà plc xuất analog điều khiển biến tần stop.Như thế,giả sử,mình cần dừng động cơ ở vị trí goc X độ bất kì , khi user cho lệnh stop , mình sẽ cho PLC dò ra khi encoder quay đến goc 359 độ,tức xung Z=1 , thì mình sẽ giảm tốc rất nhanh,sau đó tiếp tục dò vị trí cần stop như mình nói ở trên.Điều này mình đã làm xong.Hi vọng có thể giúp được bạn
Đây là bài của mình : không biết có đúng không mong các bạn xem qua và cho lời phán xét :
http://www.mediafire.com/?rr62qysr26jc2aw
Mục đích : Đọc xung encoder rồi xuất tín hiệu analog điều khiển biến tần.
- Sử dụng sự kiện ngắt (event 10)
-High speed counter 1
-Mode 0.
-encoder 360 xung/vòng
-Chỉ nối duy nhất chân A vào ngõ đọc xung.
Chịu khó sử dụng hết tool của siemen có sẵn.Nhìn bên trái thấy cái Wizard sẽ thấy PTO/PTW váo đó khai báo cho lệnh phát xung trong đó có chỗ chon milisecond hay microsecond.Hầu hết ứng dụng của siemen đều được viết sẵn cứ việc lấy mà xài khỏi phải nhớ nội dung các vùng nhớ đặc biệt cho mệt khi đã quen thì hãy tìm hiểu sâu các vùng nhớ đó chức năng làm gì
chào bạn.
- sau khi bạn khai báo trong Wizard nó sẽ tạo ra một chương trình con, ở đay thì nó đã bị khóa không cho thấy code bên trong nhưng điều này không quan trọng.
với chân vào RUN có biến nội là L0.0 dùng để kích hoạt các hàm bên trong hoạt động.
với chân cycles có biến nội là LW1 là chu kỳ một xung.
với chân pulse là độ rộng xung thường là TON.
chân error là chân báo lỗi nhưng có giá trị là Byte, nên bạn cứ nạp nó vào một Byte bất kỳ nào đó sau đó cho chạy xem thử nó bằng bao nhiêu.
theo ý kiến của mình là như vậy có gì sai mong các bạn chỉnh sữa.
Bạn phongnhatdo chỉ giúp mình về "Trình bày về ngắt của PWM trong PLC S7 200" với. Mình tìm trong các tài liệu chỉ nói về 1 số lý thuyết về PWM thôi. Mong bạn giúp đỡ trả lời.
chào bạn.
- mình không biết ứng dụng của bạn như thế nào.
- về phần ngắt PWM như bạn nói thì theo mình hiểu thì bạn sẽ cho "ngưng" phát xung theo một điều kiện yêu cầu nào đó. Bạn viết một đoạn code phần trước là điều kiện ngưng phát xung và phần sau bạn chỉ cần reset biến sm67.7(Q0.0) hoặc sm77.7(Q0.1) thôi. muốn phát lại thì SET hai bit đó lại thôi.
chúc thành công nhé.
Mục này về HSC mà phát xung nhiều nhỉ:D
Ngắt thì bạn chịu khó đọc Events (bạn vào help của Microwin đánh Events) rồi lọc ra những gì phù hợp với đồ án của bạn.Còn với khối chưong trình tạo ra từ Wizard thì muốn ngưng phát xung đơn giản là cắt chân run trên chương trình con đựoc tạo ra từ wizard
chào bạn.
- không biết bạn đang nghiên cứu phần ngắt cho dòng plc s7-200 cpu bao nhiêu. Bởi vì số sự kiện ngắt còn phụ thuộc vào CPU của bạn nữa, mình có xem qua các sự kiện ngắt mà plc co hỗ trợ thì nó không đề cập đến phần ngắt PWM như bạn nói. Và số sự kiện ngắt là do nhà sản xuất quy định nên bạn có muốn thêm cũng không được. Như vậy bạn nên sử dụng chương trình con để phục vụ cho việc lập trình của bạn là tốt nhất.
- dưới là tài liệu có nói về phần ngắt viết bằng tiến Việt, bạn có thể xem kỹ để hiểu rõ hơn về ngắt nhé.
http://www.mediafire.com/?4w6dvjtqe2d8mhj
Mấy bạn coi giùm mình chỗ này với.Sao mình dùng hai HSC cùng một lúc không được,chỉ 1 cái cho gía trị về ah
Đây là bài của mình
http://www.mediafire.com/?erxmr9b3vq9ft8w
Với chương trình này thì sao không xảy ra ngắt 0 ,chỉ có ngắt 1 thôi
http://www.mediafire.com/?7f318ftm7ozaxz2
OK được rồi,do lúc này dùng cùng 1 sự kiện ngắt cho 2 chương trình ngắt
"Một chương trình ngắt có thể được gọi bởi nhiều sự kiện ngắt,nhưng 1 sự kiện ngắt không dùng cho nhiều chương trình ngắt".Post lên cho anh em nào gặp thì đỡ tốn thời gian
Chào các bạn ,mình có vấn đề mong các bạn có kinh nghiệm hướng dẫn
Mình đọc hsc trong s7 200 ,lúc chưa có encoder mình có dùng con 1200 phát xung cho vào ngõ đọc xung của s7 200 thì mình đọc OK.Nhưng giờ mình mua con encoder E6B2-CWZ6C (5-24VDC) của omron thì đọc không được , mình đo chân out của encoder khoảng 17v .Như vậy các bạn cho mình hỏi :
- Nếu nguồn cấp cho encoder 24v thif out có phải 24 v không ?
-Nếu trường hợp encoder thực sự chỉ 17 v thì mình xử lí thế nào ?
mong sự hồi âm từ các bạn
http://www.ia.omron.com/product/item...65e/index.html
Encoding method Incremental
Power supply voltage 5 VDC -5% to 24 VDC +15% (ripple (p-p): 5% Max.)
nguồn từ 5 tới 24VDc thì cấp luôn 24V cho PLC đọc còn nếu trường hợp encoder chỉ xài được 5V thì phải qua mạch nhân áp lên 24
Chào bạn,
Theo tui bạn chỉ check lại vấn đề này là ok, hay bị lỗi khi sử dụng encoder với 200, là: encoder của omron thường có ngỏ ra dạng npn, còn plc 200 thường có input là pnp. Do đó, khi kết nối với nhau, 02 thằng chưa hiểu. Do đó, chỉnh lại là ok.