Thông báo

Tất cả đồ án đều đã qua kiểm duyệt kỹ của chính Thầy/ Cô chuyên ngành kỹ thuật để xứng đáng là một trong những website đồ án thuộc khối ngành kỹ thuật uy tín & chất lượng.

Đảm bảo hoàn tiền 100% và huỷ đồ án khỏi hệ thống với những đồ án kém chất lượng.

Thiết kế Tay Máy 5 bậc tự do và Băng chuyền truyền phôi

mã tài liệu 301000300106
nguồn huongdandoan.com
đánh giá 5.0
mô tả 300 MB Bao gồm tất cả file hex, lst, tmp....,.lưu đồ giải thuật.. CDR thuyết minh, power point báo cáo, còn thiếu file thiết kế 3d solid work, bản vẽ nguyên lý, bản vẽ thiết kế, FILE lập trình, clip vận hành và nhiều tài liệu liên quan kèm theo đồ án này
giá 989,000 VNĐ
download đồ án

NỘI DUNG ĐỒ ÁN

TÊN ĐỀ TÀI: Thiết kế Tay Máy 5 bậc tự do và Băng chuyền truyền phôi

NỘI DUNG YÊU CẦU CỦA ĐỀ TÀI :

- Cơ khí:

            + Thiết kế Tay Máy 5 bậc tự do

+ Băng chuyền truyền phôi

- Điện tử:

+ Thiết kế hệ mạch điều khiển động cơ RC_servo

            + Mạch điều khiển băng chuyền

- Lập trình:

+ Giải thuật điều khiển của hệ thống

                        + Giải thuật điều khiển RC_servo

- Mục tiêu đề tài:

            + Điều khiển tay máy bằng biến trở

            + Chế độ điều khiển tự động cho tay máy

            + Chế độ học việc cho tay máy

 

Thiết kế Tay Máy 5 bậc tự do và Băng chuyền truyền phôiMỞ ĐẦU

 

Ngày nay. Khoa học kỹ thuật rất phát triển, trong số đó Vi điều khiển cũng phát triển không kém và được ứng dụng rất rộng rãi đối với sinh viên khoa điện tử nói chung khoa cơ điện tử nói riêng. Trong đó. Vi điều khiển được quan tâm nhiều nhất hiện nay là vi điều khiển PIC. Việc tìm hiểu và ứng dụng hết khả năng của nhiều loại PIC là cả một quá trình dài lý thú và hữu ích, vì sự thuận tiện, tinh gọn, khả năng phát triển cũng như sự đa dạng các dòng sản phẩm phù hợp nhiều quy mô ứng dụng của nó.

Để sử dụng vi điều khiển PIC vào thực tế và hiểu rỏ thêm về loại vi điều khiển PIC, Nên, Nhóm chúng em quyết định ứng dụng loại vi điều khiển PIC 16F887 để điều khiển cánh tay ROBOT và thể hiện một sự linh hoạt mà trong thực tế rất phù hợp với nhu cầu sản xuất đa dạng trong các hệ thống từ công nghiệp cho đến dân dụng. Thuận tiện cho người vận hành cũng như cũng như năng xuất và chất lượng sản phẩm, trình bày một cách sinh động hơn.

Sự lựa chọn PIC trong đề tài này là phù hợp với kiến thức hiện tại của nhóm chúng em và cũng hiểu được một phần nào ứng dụng của vi điều khiển PIC vào thực tế.

Do thời gian thực hiện, cũng như mức độ rộng lớn của đề tài, cho nên dù đã cố gắng hết sức nhưng phương án giải quyết các vấn đề của chúng em chắc chắn không thể tránh khỏi những thiếu sót. Chúng em rất mong nhận được sự đóng góp ý kiến của quý thầy/cô và bạn bè để đề tài của em càng được hoàn thiện hơn.

Mục lục

Chương I: SƠ LƯỢC……………………………………………………………………1

  1. Giới thiệu sơ lược về robot…………………………………………...………1
    1. Khái niệm robot………………………………………………..…..1
    2. Một số hình ảnh về robot và ứng dụng trong cuộc sống……..….1

1.2  nội dung đề tài…………………………………………………………..……2

1.3  ý nghĩa đề tài ………………………………...………………………………2

1.4  phương pháp nghiêng cứu. …………………………………………………3

1.5  những khó khăn của đề tài…………………………………………………..3

Chương II: THIẾT KẾ VÀ THI CÔNG………………………………………………..4

  1. Cơ Khí…………………………………………………………..…….……….4
    1. Tay Máy…………………………………………….………………4
    2.   Mẫu thiết Kế……………………...……………………………….4

2.1.3   Băng tải………………………………………………...……….…..5

  1. Truyền động xích………………….……………………….5
  2. Phương pháp căng băng tải………….…………..………...6
  3.   Bảng vẽ cơ khí………………………….….……………….……..7
  4.  Giới thiệu RC_Servo……………………...…………….…….…..9
    1.   Cấu tạo…………………………………………………….9
    2.  Động cơ RC_servo MG946R…………………………....10
    3.  Tính hiệu điều khiển……………………………………..10
    4.    Nguyên lý hoạt động và cach điều khiển

   RC_Servo…………………………………………...……11

  1.  điện tử.

2.2.1   khái quát linh kiện điện trong mạch………………………….….….12

2.2.2   khối vi điều khiển PIC 16F887………………………………..……..13

2.2.3   khối mạch nguồn ………………………………………….…………14

2.2.4   khối opto cách li…………………………………………………....…15

2.2.5   khối biến trở, nút nhấn và LCD……………………………………..16

2.2.6   khối giao i2c và eeprom 24c64……………………………..….…..…16

                  2.2.6.1   đặc điểm giao i2c………………………………….….….16

                  2.2.6.2   Truyền nhận dữ liệu Bus I2C…………………….…….17

                  2.2.6.3   Module I2C trong vi điều khiển PIC…………………..18

                        2.2.6.4   Cách thức sử dụng Module I2C trong

mikroC PRO for PIC………………………………………...…..19

                      2.2.6.5  EEPROM 24C64…………………………………………….…..19

            2.2.7  Một số hình ảnh thực tế…………………………………………….……21

  1. Lập trình……………………………………………………...…….…….22
    1. Sơ đồ khối……………………………………………….….……..22
    2. Lưu đồ giải thuật…………………………………………...…….23
    3. Hướng dẫn sử dụng……………………………………….……...35

Chương III: kết quả và hướng phát triển……………………………….…………….40

Chương IV.  Phụ lục……………………………………………………………………41

 

DANH MỤC CÁC BẢNG, SƠ ĐỒ, HÌNH VẼ

 

Hình 1.1.1 Tay máy robot đang làm việc trong nhà máy…………….………………..1

Hình 1.1.2 ASIMO là robot có những hoạt động giống người……………………..….2

Hình 1.1.3 robot hút bụi của tập IROBOT…..................................................................2

Hình 1.2.1 mẫu tay máy của 1 số sinh viên ………………………………………...…..4

Hình 2.1.3 hình tay máy của nhóm hiện tại………………………………………….…5

Hình 2.1.4 cấu tạo RC_Servo…………………………………………………...……….9

Hình 2.1.5  RC_Servo…………………………………………………………………..10

Hình 2.1.6  tính hiệu điều khiển RC_Servo………………………………………...…10

Hình 2.1.7 điều khiển vị trí góc quay RC_Servo bằng

cách điều chế độ rông xung……………………………………………...11

Hình 2.2.3.1 mạch nguồn 5v……………………………………………………………14

Hình 2.2.3.2 mạch nguồn 6v…………………………………………………………....14

Hình 2.2.3.3 mạch nguồn 12v………………………………………………………..…15

Hình 2.2.4.1 khối opto cách li…………………………………………………………..15

Hình 2.2.6.2.1 cấu trúc chân 24c64…………………………………………………….19

Hình 2.4.1 mạch eeprom 24C64………………………………………………………..21

 

Chương I:  SƠ LƯỢC

 

khoa học kỹ thuật ngày càng phát triển nhanh góp phần nâng cao năng suất lao động. Đặc biệt là sự ra đời và phát triển của công nghệ chế tạo Robot nhằm tạo ra sự tự động hóa trong quá trình sản xuất giảm đi sức lao động bằng chân tay của người lao động. Qua đây, tay máy robot (Robot Arm) được ứng dụng rất nhiềutrong cuộc sống.

1.1       Giới thiệu sơ lược về robot.

1.1.1 Khái niệm robot.

Robot hay người máy là một loại máy có thể thực hiện những công việc một cách tự động bằng sự điều khiển của máy tính hoặc các vi mạch điện tử được lập trình.

Robot là một tác nhân cơ khí, nhân tạo, ảo, thường là một hệ thống cơ khí và điện tử. Với sự xuất hiện và chuyển động của mình, robot gây cho người ta cảm giác rằng nó giác quan giống như con người. Từ "robot" (người máy) thường được hiểu với hai nghĩa: robot cơ khí và phần mềm tự hoạt động.

  1. Một số hình ảnh về robot và ứng dụng trong cuộc sống.

...................

.2 Nội dung đề tài.

  • Yêu cầu chế tạo hoàn thiện mô hình tay máy 5 bậc tự do bằng động cơ RC_servo, hoạt động các khớp một cách linh hoạt và chính xác.
  • Mạch giao tiếp i2c với eeprom 24c64 và mạch điều khiển bằng hệ thống vi điều khiển.
  • cánh tay máy hoàn thiện và chạy được 3 chế độ:

-chế độ điều khiển bẳng tay.

- chế độ chạy tự động.

 chế độ dạy học.

 

1.3    Ý nghĩa đề tài.                                                                   

Đề tài điều khiển cánh tay Robot là một ứng dụng thực tế mà hiện nay đang phát triển mạnh mẽ, đa dạng và sinh động, nó được ứng dụng nhiều trong các nhà máy sản xuất nhằm giảm bớt công sức lao động của con người đồng thời nâng cao số lượng cũng như chất lượng của sản phẩm, nên nó phù hợp nhiều ứng dụng thực tế,... Việc trình bày thao tác đối với cánh tay Robot, nhất là động cơ RC servo được ứng dụng trong các phòng thí nghiệm và trường học, nhằm tăng sự phát triển cho sinh viên và học sinh có khả năng tiếp cận với thực tế nhiều hơn, khả năng tư duy cao hơn….

 

1.4    Phương pháp nghiêng cứu.

  • Tìm hiểu vi xử lí PIC16F887 và tập lệnh.
  • Tìm hiểu ngôn ngữ lập trình và biên dịch mikroC PRO for PIC, viết chương trình và  biên dịch ra file.hex nạp cho vi điều khiển PIC.
  • Tìm hiểu về giao tiếp I2C.
  • Thiết kế phần cơ khí.
  • Thiết kế mạch điều khiển của cánh tay máy.
  • Lập trình hoàn thiện cánh tay máy Robot.

 

1.5    Những khó khăn của vấn đề.

  • Tìm hiểu giải thuật tính toán cơ khí cánh tay Robot còn hạn chế.
  • Mạch điều khiển phải đảm bảo ổn định nhất trong việc hoạt động của tay máy, nhất là mạch nguồn để cung cấp vào tay máy. Cảm biến nhận biết phôi của tay máy cần có 1 vị trí xác định và ổn định.
  • Lập trình để cho táy máy hoạt động như theo ý muốn là 1 vấn đề khó khăn. Vì chưa có kinh nghiệm nhiều, cho nên để tìm hiểu cách lập trình tốt cần 1 thời gian dài.

Chương II     THIẾT KẾ VÀ THI CÔNG

  1.   Cơ Khí.

2.1.1 Tay Máy:

2.1.1.1 Mẫu thiết kế

  • Do động cơ RC servo là một loại động cơ có kích thước 40x20x10 mm3 , cho nên trong quá trình thiết trình thiết kế cần tìm hiểu về rất nhiều vật liệu để thiết kế phần cơ khí nhẹ và chịu tải trọng tốt trong lúc hoạt động của động cơ RC servo.
  • Ngoài ra, trong phần thiết kế là làm phần đế tay máy thật vững chắc và lúc quay phần thật nhẹ nhàng làm cho động cơ RC servo  bớt chịu tải cho cả cánh tay, để khắc phục điều đó cần có 1 bạc đạn cùng gắn chung với RC servo để giảm bớt tải.
  • Điều quan trọng nhất là phần tay kẹp của tay máy cần thiết kế làm sao trong lúc hoạt động gắp sản phẩm di chuyển từ nơi ban đầu đến nơi kết thúc thật vững chắc và khả năng gắp vật tương đối linh hoạt. Đây là vấn đề trong nhóm đang tìm nhiều phướng án giải quyết.
  • Đây là 1 số mẫu thiết kế của các sinh viên đã thực hiện:

Hình 2.2.1 mẫu tay máy của 1 số sinh viên.

   Từ những mẫu thiết kế đã được học hỏi từ những sinh viên đã từng làm này,nhóm em đã đưa ra mẫu thiết kế riêng cho riêng nhóm,phù hợp với thời gian đã nhận đồ án và phù hợp với khả năng,cách lập trình của các thành viên trong nhóm.Ngoài ra, mẫu thiết kế tay máy này có thể hoạt động tương đối chính xác với những yêu cầu đề ra.

Hình 2.1.3 hình tay máy của nhóm hiện tại

2.1.2  Băng tải.

            2.1.2.1    truyền động xích:

                        Bộ truyền động xích truyền từ bánh chủ động sang bánh bị động nhờ vào sự ăn khớp giữa các răng trên mắc xích.

                        Nhóm em sử dụng bộ truyền xích để kéo dây đai của động cơ băng tải.

hình 2.1.7 bộ truyền xích          

2.1.2.2  Phương pháp căng băng tải:

Ở phương pháp căng này ta thay đổi khoảng cách M của trục 1 nên như vậy làm đai được căng đai. Ưu điểm của phương pháp này là chống được hiện tượng leo đai ra ngoài do sự không đồng trục. nhược điểm là làm phức tạp

  • Phương pháp 2: làm thay đổi khoảng cách trục

Phương pháp này ta căng đai dựa vào sự thay đổi khoảng cách A giữa trục 1 và trục 2. Ưu điểm là dễ làm giá thành rẻ hơn so với phương pháp 1. Nhược điểm là do làm thay đổi khoảng cách trục nên sẽ xảy ra hiện tượng leo đai dẫn đến quá tải motor.

 2.2.3.1  Bản vẽ cơ khí

Hình 2.2.8.  hình 3D của tay máy.

            2.2.3.2 bản vẽ chi tiết


  1. Giới thiệu về  RC_Servo.

2.1.4.1  Cấu tạo:

Hinh 2.1.4 Cấu tạo RC_servo.

RC servo là một loại động cơ điện đặc biệt có khả năng quay cơ cấu chấp hành tới một vị trí chính xác và giữ cứng tại vị trí đó ngay cả khi cơ cấu chấp hành bị đẩy trở lại. Dải góc quay chuẩn của đầu trục ra thường là 90 độ và 180 độ.

Có nhiều cách phân loại servo:Phân loại về nguồn cấp: có servo 1 chiều, servo xoay chiều 1 pha, servo xoay chiều 3 pha.Phân loại về vật liệu làm hộp giảm tốc có: bằng composit, kim loại, hợp kim.Về phương pháp điều khiển, servo có hai loại cơ bản: analog và digital. Bề ngoài thì không có gì khác nhau và về cơ bản, các phần bên trong cũng không phân biệt nhiều ngoại trừ một vài phần điện tử, digital servo có một bộ vi xử lý.

2.1.4.2   Động cơ RC servo MG 946R:

  • nhóm em chọn RC servo MG 946R vì có khả năng chịu tải tốt, có momen khoảng 12 kg/cm(hoạt động ở mức 5V), vớigóc giới hạn của RC servo khoảng 1500, tần số 40 đến 60Hz, nguồnsử dụng 4.8 đến 7.2V, trọng lượng nhẹ khoảng 55g, tốc độ0,2s/600(hoạt động ở mức 5V).

Hình 2.1.5 RC_servo

      2.1.4.3  Tín hiệu điều khiển:


  • Động cơ servo được điều khiển bằng mạch điều khiển. Mạch điều khiển bằng xung vuông có độ rộng 1ms ->2ms, tần số 40 -> 60 Hz. Để điều khiển servo quay theo các góc cố định thì chip điều khiển phải phát xung với độ rộng từ 1ms đến 2ms. Hình 2.9 là mô tả về tín hiệu điều khiển này: 1ms ứng với góc quay nhỏ nhất -900 và 2ms ứng với góc quay lớn nhất của servo 900 nên góc quay ở giữa 00 ứng với độ rộng xung là 1,5 ms.

2.1.4.4  Nguyên lý hoạt động và cách điều khiển RC servo:

  • Để điều khiển từng vị trí góc của RC servo 1 cách chính xác bằng cách cung cấp xung theo phương thức điều biến độ rộng xung(PWM),độ rộng xung sẽ quyết định vị trí góc của trục động cơ.Cụ thể hơn, mạch điều khiển là đáp ứng của một tín hiệu số có các xung biến đổi từ 1 – 2 ms. Các xung này được gởi đi 50 lần/giây.Chú ý rằng không phải số xung trong một giây điều khiển servo mà là chiều dài của các xung. Servo đòi hỏi khoảng 30 – 60 xung/giây.Nếu số này qua thấp, độ chính xác và công suất để duy trì servo sẽ giảm.Với độ dài xung 1ms, servo được điều khiển quay theo một chiều (giả sử là chiều kim đồng hồ như hình 2)

Hình 2.1.7 : Điều khiển vị trí góc quay của động cơ bằng cách điều chế độ rộng xung                              

2.2   Điện Tử.

     2.2.1 khái quát linh kiện điện tử trong mạch.

      Hình minh họa

Tên linh kiện

Công dụng

 

 

Điện trở

 

Chia áp và hạn dòng cho mạch

 

 

 

 

Tụ điện

 

 

Chống nhiễu và chống sụp áp cho mạch điện.

 

 

 

Biến trở

 

 

Điều chỉnh được diên áp ra.

 

 

 

Nút nhấn

 

 

Đóng ngắt dòng điện

 

 

 

 

Loa nhỏ

 

 

Tạo ra âm thanh

 

 

Ic ồn áp 5,6,12 VDC

 

ổn áp ra nguồn 5, 6,12 VDC

 

 

B688

 

 

 

Khuếch đại dòng điện

 

 

 

relay

 

Đóng ngắt dòng diện cho động cơ

 

 

 

opto

 

Cách li nguồn của vi điều khiền và nguồn động cơ

 

 

 

Diode cầu

 

Chuyền dòng diện xoay chiều thành dòng diện một chiều

 

 

Biến áp

Chuyền điện áp 220v xoay chiều thành điện áp 12v xoay chiều

 

 

Quang trở

 

Thay đổi giá trị điện trở theo cường độ ánh sáng

 

 

Thu phát hồng ngoại

 

Phát hiện vật

                                                

2.2.2  khối vi điều khiển PIC 16F887.

                 Đây là họ vi điều khiển 16F8XXX với tập lệnh 35 lệnh có độ dài 14 bit. Mỗi lệnh được thực thi trong 1 chu kỳ xung clock. Tốc độ hoạt động tối đa cho phép là 20MHz ( tức là 1 chu kỳ máy mất 0.2us ).

  • 368 bytes RAM
  • 5 Port I/O (A, B, C, D, E), ngõ vào/ra với tín hiệu điều khiển độc lập
  • 1 bộ biến đổi tương tự – số (ADC) 10 bit, 8 ngõ vào.
  • 1 bộ định thời giám sát (WDT – Watch Dog Timer).
  • 15 nguồn ngắt (Interrupt).

2.2.3 khối mạch nguồn.

Hình 2.2.3.1: mạch nguồn 5v.

Hình 2.2.3.2: mạch nguồn 6v.

Nguyên lý hoạt động: nguồn điện 12v_n1 được cấp vào phân phối đến mạch điều khiển trung tâm,điện áp 12v đi qua IC ổn áp LM7805 chuyển thành điện áp 5v cung cấp cho vi điều khiển.Nguồn 12v_n2 đi qua IC ổn áp LM7806 chuyển thành điện áp 6v cung cấp cho tất cả động cơ RC_Servo.

.........................................

  •  
  • Khối nguồn 12v.
  • Hình 2.2.3.3: nguồn 12v

Nguyên lí hoạt động:nguồn điện 12v AC được cấp vào qua IC ôn áp LM7812 cho ra nguồn 12v DC và truyền tới băng tải.

               2.2.4 Khối opto cách li

 

Hình 2.2.4.1  khối opto cách li

Nguyên lí hoạt động: dùng đề cách ly nguồn 5VD VDK với nguồn 6VDC cua RC_servo. Và tạo tính hiệu xung để kích cho RC_servo hoạt động.

2.2.5  khối biến trở, nút nhấn và mạch lcd.

 

Nguyên lý hoạt động: mạch biến trở tao ra điện thay đổi được từ 0v đến 5v, mạch nút nhấn dùng để đóng ngắt dòng điện. mach lcd dùng để hiện thị ký tự lên màng hình.

 

  1.   khối giao i2c và eeprom 24c64.

2.2.6.1 Đặc điểm giao tiếp I2C:

Một giao tiếp I2C gồm có 2 dây: Serial Data (SDA) & Serial Clock (SCK). SDA là đường truyền dữ liệu 2 hướng, còn SCL là đường truyền xung đồng hồ và chỉ theo một hướng. Như hình vẽ trên, khi một thiết bị ngoại vi kết nối vào đường I2C thì chân SDA của nó sẽ nối với dây SDA của bus, chân SCL sẽ nối với dây SCL.

Mỗi dây SDA hay SCL đều được nối với điện áp dương của nguồn cấp thông qua một điện trở kéo lên (pull-up resistor). Sự cần thiết của các điện trở kéo này là vì chân giao tiếp I2C của các thiết bị ngoại vi thường là dạng cực máng hở (open drain & open collector). Giá trị của các điện trở này khác nhau tùy vào từng thiết bị và chuẩn giao tiếp, thường dao động trong khoảng 1KΩ đến 4.7KΩ.

 

2.2.6.2 Truyền nhận dữ liệu Bus I2C :

Việc truyền dữ liệu diễn ra giữa con chủ và con tớ. Dữ liệu truyền có thể theo 2 hướng từ chủ đến tớ hay ngược lại. Hướng truyền được quy định bởi bit thứ 8 trong byte đầu tiên được truyền đi.

 

Hình2.34:Quátrìnhtruyềndữ liệu

Truyền dữ liệu từ chủ đến tớ (ghi dữ liệu): Thiết bị chủ khi muốn ghi dữ liệu đến con tớ, quá trình thực hiện là:

- Thiết bị chủ tạo xung START.

- Thiết bị chủ gửi địa chỉ của thiết bị tớ mà nó cần giao tiếp cùng với   = 0 ra bus và đợi xung ACK phản hồi từ con tớ.

- Khi nhận được xung ACK báo đã nhận diện đúng thiết bị tớ, con chủ bắt đầu gửi dữ liệu đến con tớ theo từng byte một. Theo sau mỗi byte này đều là một xung ACK. Số lượng byte truyền là không hạn chế.

- Kết thúc quá trình truyền, con chủ sau khi truyền byte cuối sẽ tạo xung STOP báo hiệu kết thúc.

 

Hình 2.3.5: Ghi dữ liệu từ chủ đến tớ

Truyền dữ liệu từ tớ đến chủ (đọc dữ liệu): Thiết bị chủ muốn đọc dữ liệu từ thiết bị tớ, quá trình thực hiện như sau:

- Khi bus rỗi, thiết bị chủ tạo xung START, báo hiệu bắt đầu giao tiếp.

- Thiết bị chủ gửi địa chỉ của thiết bị tớ cần giao tiếp cùng với bit  = 1 và đợi xung ACK từ phía thiết bị tớ.

- Sau xung ACK dầu tiên, thiết bị tớ sẽ gửi từng byte ra bus, thiết bị chủ sẽ nhận dữ liệu và trả về xung ACK. Số lượng byte không hạn chế.

- Khi muốn kết thúc quá trình giao tiếp, thiết bị chủ gửi xung Not-ACK và tạo xung STOP để kết thúc.

 

Hình2.36: Đọcdữ liệutừ thiếtbị tớ

Quá trình kết hợp ghi và đọc dữ liệu: giữa hai xung START và STOP, thiết bị chủ có thể thực hiện việc đọc hay ghi nhiều lần, với một hay nhiều thiết bị. Để thực hiện việc đó, sau một quá trình ghi hay đọc, thiết bị chủ lặp lại một xung START và lại gửi lại địa chỉ của thiết bị tớ và bắt đầu một quá trình mới.

 

Hình 2.37: Quátrìnhphốihợp đọc/ghidữ liệu

Chế độ giao tiếp Master-Slave là chế độ cơ bản trong một bus I2C, toàn bộ bus được quản lý bởi một master duy nhất. Trong chế độ này sẽ không xảy ra tình trạng xung độ bus hay mất đồng bộ xung clock vì chỉ có một master duy nhất có thể tạo xung clock.

  1. Module I2C trong vi điều khiển PIC :

Với những tiện ích đem lại, khối giao tiếp I2C đã được tích hợp cứng trong khá nhiều loại Vi điều khiển khác nhau. Trong các loại Vi điều khiển PIC dòng Mid-range phổ biến tại Việt Nam, chỉ từ 16F88 mới có hỗ trợ phần cứng I2C, còn các loại 16F84, 16F628 thì không có. Với những loại Vi điều khiển không có hỗ trợ phần cứng giao tiếp I2C, để sử dụng ta có thể dùng phần mềm lập trình, khi đó ta sẽ viết một chương trinh diều khiển 2 chân bất kỳ của Vi điều khiển để nó thực hiện giao tiếp I2C (các hàm START, STOP, WRITE, READ). Trong bài viết này ta đề cập đến việc sử dụng giao tiếp I2C của các loại PIC có tích hợp khối I2C sẵn trong nó, mà cụ thể là Vi điều khiển PIC16F887.

  1.   Cách thức sử dụng Module I2C trong mikroC PRO for PIC

                                      Trong việc lập trình cho PIC sử dụng giao tiếp I2C của nó trong các ứng dụng, người lập trình có thể thực hiện một cách dễ dàng với trình dịch mikroC PRO for PIC. Nói dễ dàng ở đây là chỉ về mặt cú pháp lệnh, ta không cần sử dụng nhiều câu lệnh khó nhớ như trong lập trình ASM.

Việc khởi tạo, chọn chế độ hoạt động và thực hiện giao tiếp của I2C đã có các hàm dựng sẵn của CCS thực hiện. Các hàm liệt kê dưới đây là của phiên bản CCS 3.242, đó là:

                 I2C1_INIT();         Thông báo trạng thái giao tiếp I2C.

                 I2C1_START();     Tạo điều kiện START

                 I2C1_STOP();           Tạo điều kiện STOP

                 I2C1_READ ();     Đọc giá trị từ thiết bị I2C, trả về giá trị 8 bit.

                 I2C1_WRITE();      Ghi giá trị 8 bit đến thiết bị I2C.

2.2.6.5  EEPROM 24C64:

Hình 2.2.6.2.1:  Cấu trúc chân 24C64

  • Đây là eeprom thuộc họ 24cxx với dung lượng bộ nhớ 16k bit (2048x8), bộ nhớ được cấu hình 128 page với 16 byte mỗi page.

Thông số:

  • Nguồn cấp từ 2.7V đến 5.5V.
  • Chuẩn giao tiếp nối tiếp I2C.
  • Hỗ trợ viết liên tục 16byte trên một page.
  • Dữ liệu được lưu trữ khi eeprom bị mất nguồn.
  • Bộ nhớ với khả năng ghi xóa 1000000 lần.
  • Dữ liệu bộ nhớ có thể lưu trữ 100 năm.

Chức năng của các chân 24C16

  • Chân 1,2,3 là 3 bit địa chỉ giao tiếp của eeprom (nếu 3 bit này nối Mass thì địa chỉ eeprom là 0xA0).
  • Chân 4,7 nối Mass
  • Chân 5 dùng để truyền nhận dữ liệu 8 bit.
  • Chân 6 nhận tín hiệu xung clock từ con Master.
  • Chân 8 nối VCC.
  • ..............................

Bit 1010 là 4 bit địa chỉ mặc định của eeprom.

  • Các bit B10  B9 B8  tương ứng với các chân 1,2,3 ở hình 2.39 (nếu giao tiếp nhiều eeprom thì thay đổi địa chỉ eeprom bằng cách thay đổi các bit B10 B9 B8).
  • Bit R/W=0 ghi dữ liệu vào eeprom.
  • R/W=1 đọc dữ liệu từ eeprom.

 2.2.7.  một số hình ảnh thực tế về mạch điện tử.

2.3   lập trình.

            2.3.1 sơ đồ khối:

2.3.2   lưu đồ giải thuật

2.3.2.1  giải thuật PIC ĐK

2.3.2.2: giải thuật Pic LCD

2.3.2.3.  giải thuật điều khiển tay máy

2.3.2.4 Giải thuật điều khiển vị trí của RC_servo

Close