Bảng thông số PID theo phương pháp Ziegler-Nichols

Một phần của tài liệu Thiết kế và chế tạo mô hình robot scara phân loại sản phẩm theo màu sắc và hình dạng (Trang 55 - 59)

Thông số KP KI KD Bộ ĐK P 0.5KC - - PI 0.45KC 1.2KP/PC - PID 0.6KC 2KP/PC KPPC/8  Phương pháp chỉnh định bằng phần mềm

- Dùng phần mềm để tự động chỉnh định thông số PID (thực hiện trên mơ hình tốn, kiểm nghiệm trên mơ hình thực).

- Ví dụ dùng giải thuật di truyền (GA) để tìm thơng số sao cho sai số đo được nhỏ hơn giá trị yêu cầu.

2.2.8 Chuẩn giao tiếp I2C2.2.8.1 Sơ lượt về I2C 2.2.8.1 Sơ lượt về I2C

I2C là giao thức truyền tin nối tiếp đồng bộ sử dụng 2 dây: SDA và SCL trong đó SDA (serial data) là đường truyền nhận dữ liệu và SCL(serial clock) là đường truyền xung nhịp. Các đường SDA và SCL trên các thiết bị có cấu hình cực máng hở (open-drain) hoặc collector hở (open-collector) vì thế chúng cần điện trở kéo lên (pull-up resistor) khoảng từ 1 đến 10(kΩ). Ở trạng thái nghỉ thì 2 chân này ở mức cao. Lý do sử dụng một hệ thống cực máng hở (open drain) là để không xảy ra hiện tượng ngắn mạch, điều này có thể xảy ra khi một thiết bị cố gắng kéo đường dây lên cao và một số thiết bị khác cố gắng kéo đường dây xuống thấp.

Tốc độ truyền: 100Kbits/s ở chế độ chuẩn (Standard mode), có thể lên tới 400Kbits/s ở chế độ nhanh(Fast mode) và cao nhất là 3,4Mbits/s ở chế độ cao tốc (High-speed mode).

Trên đường truyền giao tiếp I2C: Có thể là một chủ-một tớ (One Master One Slave), một chủ- nhiều tớ (One Master-Multi Slave) hoặc nhiều chủ-nhiều tớ (Multi Master –Multi Slave). Một thiết bị tớ Slave cũng có thể trở thành chip chủ nếu nó có

Hình 2.19: Sơ đồ truyền dữ liệu I2C

2.2.8.2 Một số khái niệm quan trọng

Master: Giữ vai trò điều khiển bus I2C, tạo xung clock(SCL) trong suốt quá

trình giao tiếp, khởi động quá trình truyền nhận, phát đi địa chỉ của thiết bị cần giao tiếp, gửi tín hiệu R/W tới Slave, truyền/nhận dữ liệu tới Slave, tạo tín hiệu NOT ACK khi kết thúc nhận từ Slave, tạo tín hiệu kết thúc quá trình truy xuất.

Slave: Nhận địa chỉ và bit R/W từ Master (Chỉ “Response” khi đúng địa chỉ).

Nhận dữ liệu từ Master gửi bit ACK sau mỗi 8 Clock. Truyền dữ liệu tới Master, chờ ACK từ Master để tiếp tục gửi.

Start condition (điều kiện bắt đầu): Đang ở trạng thái nghỉ (SDA=SCL=1),

Master muốn thực hiện một cuộc gọi thì nó sẽ kéo chân SDA xuống thấp trong khi SCL vẫn ở mức cao. Khi điều kiện bắt đầu được gửi bởi thiết bị Master, tất cả các thiết bị Slave đều hoạt động ngay cả khi chúng ở chế độ ngủ (sleep mode) và đợi bit địa chỉ.

Stop condition (điều kiện kết thúc): Sau khi thực hiện truyền nhận dữ liệu nếu

Master muốn kết thúc thì nó sẽ kéo chân SDA lên cao trong khi SCL vẫn ở mức cao. Điều kiện kết thúc chỉ được tạo ra sau khi địa chỉ hoặc dữ liệu đã được truyền nhận.

Khoảng giữa Start condition và Stop condition là khoảng bận của đường truyền. Các Master khác không thể tác động vào đường truyền trong khoảng thời gian này. Sau khi kết thúc truyền nhận mà Master không gửi Stop condition mà lại gửi thêm Start condition gọi là Repeat Start: xảy ra khi Master muốn lấy liên tiếp dữ liệu từ Slave. Sau khi thiết bị truyền gửi byte dữ liệu thì sẽ có tín hiệu đáp trả (Response) của thiết bị nhận. Tín hiệu đáp trả đã nhận được gọi là ACK (thiết bị nhận kéo SDA xuống 0) và ngược lại là NACK(SDA vẫn ở mức cao).

Hình 2.21: Điều kiện REPEATED START

Mỗi thiết bị tham gia vào bus I2C đều có địa chỉ cố định có độ dài 7 bit như vậy trên một bus I2C có thể phân biệt tối đa 128 thiết bị.

2.2.8.3 Thực hiện giao tiếp truyền nhận dữ liệu

Khi một Master muốn giao tiếp với 1 Slave nào đó trước hết nó tạo ra Start Condition, tiếp theo là gửi địa chỉ của Slave cần giao tiếp (7 bit) + 1bit READ/WRITE( mất 8 clock). Tại thời điểm clock thứ 9 (tức là xung trên SCL) nó sẽ đọc xung gọi là ACK (tất nhiên là trên SDA) từ Slave. Xung ACK=0 khi Slave có địa chỉ tương ứng đã response. Nếu xung ACK=1(NOT ACK) lúc này Master có những xử lý phù hợp ví dụ có thể gửi Stop condition sau đó phát lại địa chỉ Slave khác. Khi Slave có địa chỉ tương ứng đã respone tiếp đến Master sẽ truyền hoặc nhận dữ liệu tùy thuộc vào bit READ/WRITE mà Master vừa gửi.

Nếu bit READ/WRITE=0 tức là Master muốn ghi dữ liệu vào Slave. Master bắt đầu gửi dữ liệu đến Slave từng byte một (mất 8 clock/byte), clock thứ 9 Slave nhận sẽ phát lại ACK(kéo SDA=0).

Nếu Slave phát tín hiệu NOT ACK (không tác động SDA ở xung thử 9) (ACK=1) sau khi nhận dữ liệu thì Master sẽ kết thúc quá trình gửi bằng cách phát đi Stop condition. Để kết thúc quá trình truyền khi mà Master truyền byte cuối nó cũng sẽ tạo ra Stop condition.

Nếu bit READ/WRITE=1 tức là Master muốn đọc dữ liệu từ Slave thì Slave sẽ gửi từng byte ra SDA. Master sẽ nhận từng byte dữ liệu và cũng trả về bit ACK =0 (kéo SDA xuống thấp ở clock 9) sau mỗi byte nhận. Nếu Master khơng muốn nhận dữ liệu nữa nó sẽ gửi xung NOT‐ACK và tạo tín hiệu STOP.

Nếu Master gửi địa chỉ của Slave là 0 và bít READ/WRITE=0 thì tức là nó muốn thực hiện một cuộc gọi chung tới tất cả các Slave. Slave đồng ý sẽ phát tín hiệu ACK, khơng đồng ý sẽ phát tín hiệu NACK. Cuộc gọi chung thường xảy ra khi Master muốn gửi dữ liệu chung đến các Slave. Cuộc gọi chung khơng có nghĩa khi phát địa chỉ là 0 và đi sau là bit READ/WRITE=1 vì Master khơng thể nhận dữ liệu đồng thời từ các Slave.

2.2.8.4 Đặc điểm truyền nhận

Dữ liệu được truyền trên bus I2C theo từng bit tại mỗi cạnh lên của xung (Clock SCL) , sự thay đổi bit dữ liệu trên SDA xảy ra khi SCL đang ở mức thấp. Số lượng byte có thể truyền trong một lần tùy ý tối đa là 128byte. Trái với UART, trong giao thức I2C: bit MSB sẽ được truyền trước. Sau 8 xung clock 8 bit dữ liệu đã được truyền đi, thiết bị nhận sẽ kéo SDA xuống mức thấp tương ứng một bit ACK tại xung clock thứ 9 báo hiệu đã nhận đủ 8 bit. Thiết bị truyền khi nhận được bit ACK sẽ tiếp tục thực hiện quá trình truyền hoặc kết thúc.

CHƯƠNG 3: THIẾT KẾ VÀ CHẾ TẠO MƠ HÌNH 3.1 Bài tốn động học

3.1.1 Động học thuận

Bài toán động học thuận yêu cầu xác định vị trí và hướng của khâu tác động cuối (end-effeector) khi biết trước các giá trị của biến liên kết.

Trong chuyển đổi Denavit-Hartenberg, ta đặt gốc tọa độ trùng với đế của Robot thì ta có được bảng thơng số DH như sau:

Một phần của tài liệu Thiết kế và chế tạo mô hình robot scara phân loại sản phẩm theo màu sắc và hình dạng (Trang 55 - 59)

Tải bản đầy đủ (PDF)

(138 trang)