Đồ án: nghiên cứu và hoàn thiện mô hình kho hàng tự động
Đồ án: nghiên cứu và hoàn thiện mô hình kho hàng tự động
Môn: Hệ thống điều khiển giao thông vận tải (GTVT)
Trường: Đại học Giao thông vận tải
Thông tin:
Tác giả:
Preview text:
lOMoARcPSD| 36006477
TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI
ĐỒ ÁN TỐT NGHIỆP
NGHIÊN CỨU VÀ HOÀN THIỆN MÔ HÌNH KHO HÀNG TỰ ĐỘNG Đinh Thành Nam ID: 1711040069 Ngành cơ khí
Chuyên ngành kĩ thuật cơ khí
Giảng viên hướng dẫn:
PGS. TS. Nguyễn Thanh Phương Chữ ký của GVHD Bộ môn: Kĩ thuật cơ khí lOMoAR cPSD| 36006477 LỜI NÓI ĐẦU
Ngày nay, xã hội ngày càng phát triển mọi công ty, tổ chức đều cố gắng tối
ưu hóa dây chuyền sản xuất cũng như chuỗi cung ứng của mình. Kho có một vai trò
vô cùng quan trọng trong chuỗi cung ứng đó. Là một phần cốt lõi của quản lý hậu
cần, kho của bạn không chỉ là một hoạt động phụ trợ lưu trữ hàng hóa, vật liệu hoặc
tài sản. Đó còn là một liên kết quan trọng cơ bản cho sự thành công của chuỗi cung
ứng lớn hơn mà nó được kết nối. Các vấn đề hoặc sự chậm trễ trong hoạt động kho
có thể chảy xuôi dòng để tác động đến việc lập hóa đơn, dòng tiền và sự hài lòng của khách hàng.
Hệ thống nhà kho cũ truyền thống chủ yếu phụ thuộc vào sức người là chính
đã không còn phù hợp với thị trường hiện nay. Để thay thế cho những kho truyền
thống như vậy thì hệ thống kho tự động được ra đời giúp giải quyết các hoạt động
xuất nhập hàng một cách nhanh chóng và chính xác, quản lí hàng hóa dễ dàng hơn,
tối ưu được không gian kho bãi và rất nhiều những tiện ích khác nữa.
Trải qua thời gian học tập tại trường, được sự chỉ bảo hướng dẫn nhiệt tình
của thầy cô giáo trong bộ môn Tự động hóa, em đã tích luỹ được vốn kiến thức nhất
định. Được sự đồng ý của nhà trường và thầy cô giáo trong Viện em được giao đề
tài tốt nghiệp: “Nghiên cứu và hoàn thiện mô hình Kho hàng tự động”.
Đồ án tốt nghiệp của em gồm bốn chương:
Chương 1: Tổng quan về Kho hàng tự động.
Chương 2: Tính toán thiết kế cơ khí kho tự động.
Chương 3: Tính toán thiết kế bộ điều khiển kho hàng tự động.
Chương 4: Lập trình điều khiển và hoàn thiện mô hình.
Bằng sự cố gắng nỗ lực của bản thân và đặc biệt là sự giúp đỡ tận tình, chu
đáo của thầy Nguyễn Thanh Phương và các thầy cô giáo bộ môn trong trường, em
đã hoàn thành đồ án đúng thời hạn. Nhưng do thời gian làm đồ án có hạn và trình
độ còn nhiều hạn chế nên không thể tránh khỏi những thiếu sót. Em rất mong nhận
được ý kiến đóng góp của các thầy cô để đồ án này được hoàn thiện hơn nữa.
Em xin chân thành cảm ơn thầy Nguyễn Thanh Phương và các thầy cô giáo
trong bộ môn đã tạo điều kiện giúp đỡ em trong thời gian qua.
Hồ Chí Minh, ngày 10 tháng 06 năm 2021 Sinh viên thực hiện: lOMoAR cPSD| 36006477 MỤC LỤC
CHƯƠNG 1: TỔNG QUAN VỀ KHO HÀNG TỰ ĐỘNG 1
1.1. Giới thiệu chung về kho hàng tự động 1
1.1.1. Tìm hiểu chung về hệ thống lưu trữ hàng hóa 1
1.1.2. Tìm hiểu về hệ thống lấy cất hàng hóa tự động (ASRS) 2
1.2. Cấu trúc cơ bản của một hệ thống kho tự động 3
1.2.1. Hệ thống vận chuyển 4
1.2.2. Hệ thống xuất nhập 5
1.2.3. Hệ thống lưu trữ 7
CHƯƠNG 2: TÍNH TOÁN THIẾT KẾ CƠ KHÍ KHO TỰ ĐỘNG 9
2.1. Lựa chọn phương án thiết kế kho hàng tự động 9
2.1.1. Phương án thiết kế khung 9 Sinh viên thực hiện
2.1.2. Phương án thiết kế cánh tay cơ khí Ký và ghi rõ họ tên 13
2.2. Tính toán thiết kế khung vỏ 14
2.2.1. Lựa chọn vật liệu làm khung 14
2.2.2. Thiết kế khung kho hàng 17
2.3. Tính toán thiết kế hệ truyền động 21
2.3.1. Cơ cấu vít me- đai ốc trượt 21 2.3.2. Cơ cấu vít me bi 22
2.3.3. Cơ cấu truyền động đai 23
2.3.4. Mô hình cánh tay cơ khí 27
CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ BỘ ĐIỀU KHIỂN KHO HÀNG TỰ ĐỘNG 29
3.1. Tính toán lựa chọn động cơ và driver 29
3.1.1. Động cơ một chiều 29 3.1.2. Động cơ servo 32 lOMoARcPSD| 36006477
3.1.3. Động cơ bước 35
3.1.4. Lựa chon động cơ 38
3.1.5. Lựa chon driver điều khiển 39
3.2. Lựa chọn bộ điều khiển 42
3.2.1. Bộ điều khiển logic khả trình(PLC) 42 3.2.2. Vi điều khiển 45
3.2.3 Sơ đồ kết nối các khối trong bộ điều khiển 48 CHƯƠNG
4 : LẬP TRÌNH ĐIỀU KHIỂN VÀ HOÀN THIỆN
MÔ HÌNH KHO HÀNG TỰ ĐỘNG 53 4.1. Arduino 53
4.1.1. Giới thiệu về Arduino 53 4.1.2. Arduino nano 56
4.2. Lập trình điều khiển 60
4.2.1. phần mềm lập trình 60
4.2.2. Lưu đồ, thuật toán điều khiển 65
4.3. Hoàn thiện mô hình kho hàng tự động 67 KẾT LUẬN 68
TÀI LIỆU THAM KHẢO 69 PHỤ LỤC 70 DANH MỤC HÌNH VẼ
Hình 1.1 Các thiết bị bốc dỡ cơ bản hiện nay 2
Hình 1.2 Kho ASRS có tốc độ xuất nhập hàng rất nhanh 2
Hình 1.3 Hệ thống quản lí của kho ASRS 3
Hình 1.4 Băng tải trong kho tự động 4
Hình 1.5 Robot hoạt động trong các kho 4
Hình 1.6 Ví dụ mã vạch của 1 hàng hóa 5
Hình 2.1 Hệ thống kệ selective 10
Hình 2.2 Hệ thống kệ di động 11 Hình 2.3 Kệ double deep 11
Hình 2.4 Hệ thống kệ driver in 12 Hình 2.5 Thép hộp 15 lOMoARcPSD| 36006477
Hình 2.6 Khung sắt đa năng 16 Hình 2.7 Nhôm định hình 17 Hình 2.8 Chọn vật liệu 18 Hình 2.9 Gắn cứng 18 Hình 2.10 Đặt lực 19 Hình 2.11 Chạy mô phỏng 19
Hình 2.12 Ứng suất sau khi mô phỏng 19 Hình 2.13 Hệ số an toàn 19
Hình 2.14 Hệ số an toàn của thanh đứng 20 Hình 2.15 Mối ghép 21
Hình 2.16 Cơ cấu vít me đai ốc 22
Hình 2.17 Cơ cấu vít me đai ốc bi 23
Hình 2.18 Cấu tạo cơ cấu vít me đai ốc bi 23
Hình 2.19 Mô hình truyền động đai 24 Hình 2.20 Đai dẹt 26 Hình 2.20 Đai hình thang 26 Hình 2.22 Dây đai răng 27
Hình 2.23 Lắp ráp mô hình 28 Hình 2.24 Cánh tay cơ khí 28
Hình 2. Mô hình kho hàng tự động 28
Hình 3.1 cấu tạo động cơ một chiều 29 Hình 3.2 pha1 30 Hình 3.3 pha 2 31 Hình 3.4 pha 3 31
Hình 3.5 cấu tạo động cơ servo 33
Hình 3.6 Phân loại động cơ servo 33
Hình 3.7 Cấu tạo động cơ bước 35
Hình 3.8 Động cơ bước size 42-1.8step 38
Hình 3.9 Thông số kích thước động cơ 38 lOMoARcPSD| 36006477 Hình 3.10 DRV8825 40 Hình 3.11 TCM2208 40 Hình 3.12 TB6560 41 Hình 3.13 các bộ PLC 42
Hình 3.14 vi điều khiển AVR 45
Hình 3.15 Cấu trúc mạch vi điều khiển 46
Hình 3.16 Sơ đồ kết nối khối nguồn 48
Hình 3.17 Sơ đồ kết nối các driver với động cơ 49
Hình 3.18 Sơ đồ kết nối LCD 49
Hình 3.19 Sơ đồ các nút bấm 49
Hình 3.20 Vị trí kết nối với các cảm biến tọa độ 50
Hình 3.21 Vị trí kết nối với cảm biến khoảng cách 50
Hình 3.22 Sơ đồ nối chân của arduino 51
Hình 3.23 Mạch nguyên lý của bộ điều khiển 52
Hình 3.24 Mạch PCB của bộ điều khiển 52
Hình 4.1 Vi điều khiển Atmega328P 53 Hình 4.2 Arduino UNO 54
Hình 4.3 Arduino nano và cáp nối 57
Hình 4.1 Sơ đồ các chân của arduino nano 58
Hình 4.4 Giao diện Arduino IDE 60 Hình 4.5 mục file 61 Hình 4.6 Mục edit 61 Hình 4.7 Mục Sketch 62 Hình 4.8 Mục Tools 62 Hình 4.9 Mục help 63 Hình 4.10 output panel 63
Hình 4.11 Lưu đồ thuật toán cất và trả hàng 1 65
Hình 4.12 Lưu đồ thuật toán cất và trả hàng 1 66
Hình 4.13 Mạt sau mạch bộ điều khiển 66 lOMoARcPSD| 36006477
Hình 4.14 Mặt trước bộ điều khiển 67
Hình 4.15 Mô hình hoàn thiện 67 lOMoAR cPSD| 36006477 TÓM TẮT ĐỒ ÁN
Ngày nay, các dịch vụ giao hàng và vận chuyển hàng hóa đóng vai trò vô cùng
quan trọng trong chuỗi cung ứng và hoạt động của các doanh nghiệp. Các hệ thống
kho cũ lỗi thời đã không thể đáp ứng hoàn toàn được từ đó đòi hỏi phải có những
hệ thống kho tiên tiến hơn để cho quá trình luân chuyển hàng hóa nhanh chóng và
dễ dàng hơn. Trên cơ sở đó em đã nghiên cứu thiết kế và hoàn thiện một mô hình
nhà kho tự động để hiểu rõ hơn về quá trình vận hành hoạt động cũng như các ưu
điểm mà kho hàng tự động đem lại. Hệ thống kho hàng tự động phần cơ khí gồm có
kệ cất trữ hàng cùng cánh tay cơ khí được điều khiển bởi bộ điều khiển sử dụng
arduino. Arduino có chức năng nhận tín hiệu cũng như điều khiển cánh tay robot
lấy hàng vào kho cũng như trả hàng. Hệ thống hoạt động một cách chính xác và ổn
định đối với các hàng hóa mẫu. lOMoARcPSD| 36006477
CHƯƠNG 1. TỔNG QUAN VỀ KHO HÀNG TỰ ĐỘNG
1.1 Giới thiệu chung
1.1.1 Tìm hiểu chung về hệ thống lưu trữ hàng hóa
Nền công nghiệp nước ta nói riêng và thế giới nói chung đang ngày
cảng phát triển. Các kho hàng lớn trên thế giới ngày nay xuất hiện ngày
càng nhiều, càng đòi hỏi công nghệ mới dước áp dụng để quản lí và xuất
nhập hàng một cách dễ dàng. Trước đây, hàng hóa thường được nhập xuất
vào kho chủ yếu bằng sức người nhưng hiện nay để tối ưu không gian của
kho hàng cũng như tiết kiệm thời gian hơn, quản lí hàng hóa dễ dàng hơn
thì việc nâng cấp, cải tiến các kho hàng trở nên hiện đại là vô cùng cần thiết
Hiện tại, trên thế giới có nhiều hệ thống lưu trữ hàng hóa, các hệ thống
này rất đa dạng, phong phú về thiết bị cũng như cách thức thực hiện. Nhưng
trong đó chủ yếu là sử dụng nhân công để bốc dỡ hàng hóa, các thiết bị bốc
dỡ hàng là các máy nâng sử dụng người lái để sắp xếp hàng hóa vào kho.
Nhìn chung, các nhà kho hiện nay có các nhược điểm sau:
- Sử dụng nhiều diện tích để chứa hàng hóa.
- Không phân loại được các hàng hóa khác nhau (các hàng hóa
thườngđể chung với nhau trong 1 kho).
- Không bảo quản tốt hàng hóa khi số lượng nhiều (Chất hàng chồng lên nhau).
- Rất khó kiểm soát số lượng hàng hóa ra vào trong kho.
Với sự ra đời của các hệ thống xếp hàng hóa tự động, người ta có thể quản
lý tốt hàng hóa cũng như nhanh chóng trong việc lưu trữ và xuất hàng hóa ra
khỏi kho, các hệ thống kho tự động được sử dụng robot để vận chuyển hàng
hóa, điều này đồng nghĩa với việc đầu tư trang thiết bị hiện đại cho hệ thống
kho tốn khá nhiều chi phí cho việc vận chuyển hàng hóa nhưng bù lại là hàng
hóa được bảo quản tốt, thuận tiện cho việc quản lý và kiểm soát, tiết kiệm được nhân công …
Dưới đây là một số thiết bị bốc dỡ thường được sử dụng: 1 lOMoARcPSD| 36006477
Hình 1.1 Các thiết bị bốc dỡ cơ bản hiện nay
1.1.2 Tìm hiểu về hệ thống lấy cất hàng hóa tự động(ASRS)
ASRS – Automated Storage & Retrieval System – hệ thống lấy cất
hàng hóa tự động là công nghệ hiện đại nhất được sử dụng trong các nhà kho
hoàn toàn tự động. Hệ thống gồm có 2 phần chính: phần mềm và phần cứng.
Phần mềm gồm có phần mềm quản lí các con rôbốt lấy cất hàng – crane
control software và phần mềm quản lí hàng hóa – warehouse management software.
Phần cứng bao gồm các hệ thống giá kệ cố định – static racking, các
rôbốt lấy cất hàng – warehouse cranes, hệ thống các băng tải vận chuyển
hàng – conveyors và hệ thống các cửa tự động xuất nhập hàng – automated doors
Tại các nước phát triển chẳng hạn như Anh, Pháp, Mỹ, Đức, … nhà
kho tự động đã xuất hiện từ lâu nên rất phổ biến trong các nhà máy, kho
xưởng ở đây. Loại kho này ra đời nhằm đáp ứng nhu cầu cao về tốc độ xuất
nhập, quản lý chuyên nghiệp trong môi trường làm việc khắc nghiệt.
Giải pháp này được đánh giá là tối ưu cho các kho hàng đông lạnh do
những ưu điểm và mức đầu tư hợp lý mà giải pháp này mang lại như:
- Mật độ lưu trữ cao: do giải pháp này tận dụng được chiều cao
và đường chạy của rôbốt nhỏ nên diện tích sử dụng sẽ ít hơn
những giải pháp khác, so sánh trên cùng khả năng lưu trữ giúp
tiết kiệm chi phí đầu tư cho diện tích sử dụng, xây dựng và hệ thống lạnh.
- Tốc độ xuất nhập cao trung bình 1 tấn hàng/phút/rôbốt.
Hình 1.2 Kho ASRS có tốc độ xuất nhập hàng rất nhanh
- Công nghệ chuyển đường cho phép chỉ cần một con rôbốt cho
một nhà kho giúp tiết kiệm đáng kể chi phí đầu tư.
- Không cần hệ thống chiếu sáng, tiết kiệm chi phí đầu tư hệ
thống chiếu sáng, chi phí bảo trì, chi phí vận hành. 2 lOMoARcPSD| 36006477
- Thất thoát nhiệt thấp: thất thoát nhiệt xuống đất, qua các cửa ra
vào, bù nhiệt cho hệ thống chiếu sáng là những nguồn thất
thoát nhiệt chính trong các kho lạnh. Sử dụng diện tích nhỏ
hơn các giải pháp khác nên thất thoát nhiệt xuống đất sẽ thấp
hơn, hơn nữa do không cần sử dụng hệ thống chiếu sáng nên
phần thất thoát nhiệt này bị loại trừ, ngoài ra với hệ thống cửa
ra vào tự động và có phòng cách ly nên thất thoát nhiệt sẽ là rất
thấp, giảm điện năng và thời gian xả đá của hệ thống lạnh.
- Không sử dụng lao động trong kho: tiết kiệm chi phí nhân
công, quản lí, bảo hiểm và thiết bị hỗ trợ.
- Quản lí chuyên nghiệp và hiệu quả nhờ phần mềm quản lí kho
kết hợp với công nghệ mã vạch (barcode) hay thẻ từ
(transponder) giúp giảm chi phí quản lí và nhân công, đồng
thời cũng dễ dàng đạt được các tiêu chuẩn ISO để tạo lợi thế cạnh tranh.
Hình 1.3 Hệ thống quản lí của kho ASRS
1.2 Cấu trúc cơ bản của một hệ thống kho hàng tự động
Cấu trúc cơ bản của một nhà kho tự động bao gồm nhiều hành lang, dọc theo
mỗi hành lang có một hay nhiều máy xếp, dỡ tự động. Hai bên hành lang là các
khoang chứa hàng. Đầu mỗi hàng lang là trạm xếp dỡ. Các trạm xếp dỡ liên hệ với
nhau theo hệ thống băng chuyền.
Nhìn chung kho tự động được cấu thành từ 3 phần:
- Hệ thống vận chuyển. - Hệ thống xuất nhập. - Hệ thống lưu giữ. 1.2.1
Hệ thống vận chuyển
Hệ thống vận chuyển hàng vào kho rất đa dạng tùy theo hình thức, thiết
kế và yêu cầu xuất nhập của kho mà ta có thể sử dụng những phương thức
khác nhau. Hiên nay, các kho tự động chủ yếu sử dụng các hình thức vận
chuyển như: Băng tải, robot, xe tự hành, máy nâng … 3 lOMoARcPSD| 36006477
+ Hệ thống băng tải : hệ thống băng tải gâng như có thể mang theo mọi thứ
xếp trên chúng và được sử dụng để giúp đỡ nhiều chức năng của kho hàng.
Băng tải có rất nhiều loại và mỗi loại được sử dụng để vận chuyển các loại
hàng hóa khác nhau. Băng tải dây đai và dây chuyền linh hoạt giúp xử lí các
vật phẩm có hình dạng nhỏ hoặc không đều hoặc khi cần thay đổi độ cao.
Băng tải con lăn rất hữu ích khi các mặt hàng lớn hơn.
Hình 1.4 Băng tải trong kho tự động
+ Robot và xe tự hành đóng vai trò vô cùng quan trọng trong hệ thống vận
chuyển bởi tính linh hoạt cũng như tự động của chúng giúp cho năng suất lao
động được nâng cao cũng như tiết kiệm được thời gian quản lí. Bên cạnh đó
các robot làm việc cũng vô cùng chính xác, các robot và xe tự hành thường
làm việc theo 3 trục và các hành lang của nhà kho, chúng lấy hàng ở cổng
nhập và phân loại đưa đến những ô trống trên giá của nhà kho.
Hình 1.5 Robot hoạt động trong các kho 1.2.2
Hệ thống xuất nhập
Hệ thống xuất nhập của kho tự động có thể áp dụng nhiều phương
thức khác nhau có thể kể đến như dung nhân công, thẻ từ, tích kê, mã vạch, 4 lOMoARcPSD| 36006477
máy tính, camera. Em xin lấy một ví dụ về phương pháp quản lí hệ thống sử
dụng mã vạch để minh họa chi tiết cho việc xuất nhập của hệ thống kho.
Mã vạch (Barcode) là hình gồm nhiều sọc đứng,rộng và hẹp được in để
đại diện cho các mã số dưới dạng máy có thể đọc được.
Mã vạch là sự thể hiện thông tin trong các dạng nhìn thấy trên các bề
mặt của sản phẩm, hàng hóa mà máy móc có thể đọc được. Nguyên thủy thì
mã vạch lưu trữ dữ liệu theo bề rộng của các vạch được in song song cũng
như của khoảng trống giữa chúng, nhưng ngày nay chúng còn được in theo
các mẫu của các điểm, theo các vòng tròn đồng tâm hay chúng ẩn trong các
hình ảnh. Mã vạch có thể được đọc bởi các thiết bị quét quang học gọi là máy
đọc mã vạch hay được quét từ hình ảnh bằng các phần mềm chuyên biệt. Nội
dung của mã vạch là thông tin về sản phẩm như: Nước đăng ký mã vạch, tên
doanh nghiệp, lô, tiêu chuẩn chất lượng đăng ký, thông tin về kích thước sản phẩm, nơi kiểm tra...
Các nghiên cứu cho thấy con người thường gây ra ít nhất một lỗi trong
khoảng 200 lần nhập số liệu vào máy. Khi sử dụng mã vạch và máy đọc mã
vạch, khả năng sai sót chỉ còn 1 phần 6 triệu. Độ chính xác của việc dùng mã
vạch còn cao hơn nữa khi số liệu của mã vạch được tạo ra và kiểm soát tự động
bởi chương trình không có sự can thiệp của con người..
Ví dụ mã vạch của 1 hàng hóa:
Hình 1.6 ví dụ mã vạch của 1 hàng hóa
Mã vạch là một phát minh của thế kỷ 20 và nó càng ngày trở nên quan
trọng trong cuộc sống bởi tính hiệu quả mà nó mang lại,mà quản lý xuất nhập
trong kho tự động là 1 trong những tính năng của nó.
Nguyên tắc đọc mã vạch máy quét: máy quét sẽ phảt ra 1 chùm laser công
suất thấp, chùm sáng gặp mã vạch sẽ phản xạ lại một giàn cảm biến quang.
Mã vạch là sự thể hiện thông tin trong các dạng nhìn thấy trên các bề mặt
của sản phẩm, hàng hóa mà máy móc có thể đọc được. Nguyên thủy thì mã
vạch lưu trữ dữ liệu theo bề rộng của các vạch được in song song cũng như của 5 lOMoAR cPSD| 36006477
khoảng trống giữa chúng, nhưng ngày nay chúng còn được in theo các mẫu của
các điểm, theo các vòng tròn đồng tâm hay chúng ẩn trong các hình ảnh. Mã
vạch có thể được đọc bởi các thiết bị quét quang học gọi là máy đọc mã vạch
hay được quét từ hình ảnh bằng các phần mềm chuyên biệt. Nội dung của mã
vạch là thông tin về sản phẩm như: Nước đăng ký mã vạch, tên doanh nghiệp,
lô, tiêu chuẩn chất lượng đăng ký, thông tin về kích thước sản phẩm, nơi kiểm tra...
Vi điều khiển sẽ phân tích vùng phản xạ của ánh sáng và tính toán khoảng
cách của các vạch sáng và tối rồi giải mã ra một loại ký tự tương ứng với tập
hợp vạch nào đó và theo tiêu chuẩn mã vạch nào đó.Sau khi giải mã thành các
ký tự sẽ đưa lên host hoặc lưu vào bộ nhớ đệm của thiết bị đọc và đợi lệnh
truyền.Khi có lệnh truyền tương ứng với chuẩn truyền thong nào đó RS232,IR,
wireless,… sẽ gửi dữ liệu vừa giải mã được yêu cầu tới nơi nhận.
Công nghệ mã vạch ứng dụng trong nhà kho tự động: Mỗi đơn vị hàng khi
nhập vào kho sẽ được dán nhãn mã vạch,tương ứng với 1 ô trong kho.Mã vạch
đó sẽ lưu và được máy tính xử lí,truyền qua PLC để đưa hàng đến đúng vị trí
của nó. Quá trình xuất hoàn toàn ngược lại.
Ưu điểm hệ thống quản lý kho hàng bằng mã vạch:
- Phiếu nhập, xuất mã sinh tự động
- Giá bán, giá nhập sinh tự động theo quy định và có thể sửa đổi.
- Ghi nhận nhân viên xuất hàng và khách hàng.
- Theo dõi tồn kho, kiểm kê hàng hóa, dự báo hàng hết hạn.- Quản lý hàng hóa bảo hành, bảo trì. 1.2.3
Hệ thống lưu trữ
Hệ thống lưu trữ trong kho hàng tự động không chỉ giúp ta cất giữ hàng hóa
mà còn kiểm soát chũng một cách dễ dạng. Chúng ta cùng xét một ví dụ về
hệ thống quản lí kho lạnh.
*) Phần mềm quản lý kho lạnh –DMS_COLD STRORAGE:
Chương trình được thiết kế theo quy trình kinh doanh dịch vụ kho lạnh
cho doanh nghiệp, các chức năng cơ bản: lưu giữ thông tin, khóa sổ, phân
quyền người sử dụng, ghi nhận tất cả các sự kiện phát sinh trong quá trình
hoạt động, in báo cáo, trích xuất số liệu ra bảng tính Excel, Backup dữ liệu…
* Hệ thống danh mục dùng chung khai báo ban đầu: 6 lOMoAR cPSD| 36006477
Danh mục kho hàng, loại vật tư hàng hóa mã chi tiết vật tư hàng
hóa, danh mục khách hàng, danh mục người sử dụng… * Báo cáo nhanh, chi tiết:
- Các báo cáo nội bộ đa dạng và chi tiết nhất, theo đặc thù của doanh nghiệp.
- Khả năng cung cấp thông tin tức thời.
* Thông tin chi tiết về tình hình xuất-nhập-tồn hàng hóa:
- Quản lý danh sách hàng hóa, loại hàng hóa, quy cách hàng, quy cách đónggói.
- Quản lý danh mục, danh mục pallet.
- Quản lý nhập kho theo phiếu nhập kho và theo dõi nhập từng vị trí, chọn
nhập hàng hóa trên sơ đồ kho theo đúng thực tế. Hỗ trợ in phiếu, in danh sách vị trí nhập kho…
* Quản lý xuất kho và xuất kho theo điều kiện:
- Xuất kho theo khách hàng.
- Xuất kho theo phiếu nhập. - Xuất kho theo ngày.
- Xuất kho theo từng pallet….
* Thiết lập sơ đồ kho theo đúng thực tế.
* Hỗ trợ chọn nhập, xuất trên sơ đồ.
* Hỗ trợ theo dõi hàng hóa trực quan trên sơ đồ kho.
* Hỗ trợ theo dõi dồn hàng ,dời hàng trực tiếp trên sơ đồ kho:
-Hiển thị màu báo hiệu các vị trí còn trống hàng trên bản đồ vị trí.
-Theo dõi và đánh giá tình hình tồn kho trong ngày.
-Theo dõi hàng tồn kho theo từng mặt hàng.
-Tính các loại phí: lưu kho, sang công, cắm công, thay bao bì.
Vì thế sử dụng phần mềm quản lý kho có những ưu điểm như sau:
* Quản lý hàng hóa toàn diện:
Phần mềm quản lý được thiết kế để hỗ trợ người quản lý kiểm soát mọi
hoạt động liên quan đến kho. Nhờ nắm vững hàng trong kho và số lượng,
khả năng hàng hóa bị loại bỏ do quá hạn hoặc lưu trữ quá số lượng cần thiết
sẽ được giảm tối đa. * Tối ưu hóa việc lưu kho:
Các quá trình nhập và xuất hàng được kiểm soát liên tục nhờ phần mềm
quản lý kho dựa trên các điều kiện tối ưu do người sử dụng đặt ra. Vì vậy, 7 lOMoAR cPSD| 36006477
hàng hóa sẽ luôn được lưu trữ ở số lượng vừa đủ làm giảm việc tồn đọng vốn.
* Tự động hóa quá trình nhập / xuất hàng:
Thời gian công sức (kể cả giấy tờ quản lý) được giảm thiểu khi giao nhận
hàng, vì thế người sử dụng sẽ không bao giờ cần phải tự đi tìm trong kho vị
trí cất hàng thích hợp hay món hàng đúng theo yêu cầu.
* Tận dụng tối đa không gian lưu trữ hàng trong kho:
Các vị trí cất hàng trong kho được phân loại để cất giữ mặt hàng thích
hợp (ví dụ theo trọng lượng hay chủng loại) và khi cần việc phân loại này
có thể được linh động thay đổi thông qua phần mềm quản lý kho. Mọi lãng
phí về không gian lưu trữ trong kho nhờ vậy sẽ bị hoàn toàn loại trừ.
*) An toàn phòng chống cháy nổ cho nhà kho:
Trong không gian kho chứa phải đặt hệ thống báo động với những
detector khói, và nhiệt. Nếu có hỏa hoạn, thì hệ thống này sẽ kích hoạt cái
còi (90 dB) trong hành lang chung. Nên làm giếng trời, với coupole tự mở
khi có lửa hay khói vì phần lớn nạn nhân tử vong vì khói độc hơn là vì nhiệt.
Nên lắp các vòi nước sẵn, với ổng dẫn phi 70mm tối thiểu.
Lắp đặt hệ thống dập lửa tự động: cái này tùy hàng hóa ta chất, thí dụ có
hệ thống phun nước (sprinklage), hệ thống phun bọt xà phồng (dùng cho
lư"a điện), hệ thống phun gaz inergen (hỗn hợp giữa Azote tức khí đam, Argon và CO²) .
*) Sử dụng thiết bị đo nhiệt độ, độ ẩm và điểm sương sử dụng công nghệ Psoc:
Việc kiểm soát nhiệt độ, độ ẩm khi bảo quản, lưu trữ các sản phẩm
côngnông nghiệp trong các kho chứa hàng là rất quan trọng. Thông thường
với các loại hàng hoá được lưu trữ, nhiệt độ, độ ẩm trong phòng lưu trữ
phải luôn duy trì ở 1 mức nhất định.
Dựa trên cơ sở tìm hiểu các hệ thống lưu trữ tự động trên, đề tài Thiết Kế
Hệ Thống Kho Tự Động được thực hiện dựa trên ý tưởng cá nhân cùng sự
mô phỏng hệ thống nhà kho trên thế giới 8 lOMoARcPSD| 36006477
CHƯƠNG 2 TÍNH TOÁN THIẾT KẾ
CƠ KHÍ KHO HÀNG TỰ ĐỘNG
2.1 Lựa chọn phương án thiết kế kho hàng tự động
Kho hàng tự động chính là đỉnh cao của tự động hóa kho và nhà kho thông
minh được kích hoạt cùng với một số công nghệ tự động và kết nối với nhau. Để
việc kết hợp với công nghệ cao diễn ra một cách dễ dàng và ổn định ta cần xây
dựng một hệ thống kho hàng tối ưu nhất về công nghệ cũng như giá thành và không gian sử dụng.
2.1.1 Phương án thiết kế khung kho hàng
Hiện nay có rất nhiều kiểu dáng cũng như mẫu khác nhau về khung kệ
của một kho hàng nhưng tựu chung lại khung kho hàng cần đảm bảo được các yếu tố sau:
- Khung phải có tính thẩm mĩ: Kệ kho hàng cũng góp phần tạo
nên diện mạo của nhà kho, vì thế bạn nên lựa chọn những kệ
cho thiết kế thông minh, màu sắc hài hòa và màu sơn của
xưởng. Không nên chọn những kệ nhiều màu vì dễ gây rối mắt.
- Khả năng chịu tải của kệ: tùy vào trọng lượng và đặc điểm của
hàng hóa mà lựa chọn kết cấu, vật liệu làm khung cho phù hợp.
- Khung kho hàng phải phù hợp với diện tích sử dụng của kho
cũng như không gian hoạt động của robot chuyển hàng.
Các loại giá, kệ kho hàng phổ biến hiện nay: - Kệ selective:
Đây là loại kệ tải trọng nặng, được thiết kế để lưu trữ hàng hóa
trên pallet, có sự hỗ trợ bốc xếp của các loại xe nâng. Kệ chứa
hàng với tải trọng khoảng: 500~2500kg/pallet; nguyên tắc
xuất/ nhập hàng: Chọn lọc, FIFO, LIFO. 9 lOMoARcPSD| 36006477
Hình 2.1 Hệ thống kệ selective
Kệ Selective được ứng dụng trong nhiều ngành công nghiệp
khác nhau như: Thực phẩm, cơ khí, hàng tiêu dùng, linh
kiện sản xuất,… có thể chịu được điều kiện bảo quản khắc
nghiệt như kho lạnh với nhiệt độ -600C. Tối đa diện tích sử dụng kho •
Xuất – nhập hàng hóa dễ dàng •
An toàn cho hàng hóa và con người •
Kiểm soát tồn kho tốt, định vị được hàng hóa qua hệ thống
mã vạch tích hợp trong phần mềm.
- Kệ pallet di động (mobile rack)
Kệ pallet di động mở lối đi cho xe nâng hàng, giúp kiểm soát
vị trí và thuận lợi cho hoạt động vào/ra của xe nâng. Hệ
thống kệ để pallet này giúp giảm 50% diện tích nhà kho. 10 lOMoARcPSD| 36006477
Hình 2.2 Hệ thống kệ di động
Với chuyển động bánh xe nhịp nhàng, giao diện thân thiện với
người dùng, kèm tích hợp cảm biến an toàn, kệ Pallet di động
mang lại nhiều lợi ích: •
Lưu trữ các tài liệu, chứng từ quan trọng. •
Các vật tư, công cụ dụng cụ đắt tiền, … •
Sử dụng linh hoạt, đạt độ an toàn cao, nhất là trong
quản lý. - Kệ double deep:
Đây cũng là một dạng kệ chứa hàng lựa chọn (selective), được
tạo nên bởi 2 dãy kệ đôi giáp lưng vào nhau giúp giảm diện
tích lối đi và tăng diện tích sử dụng sàn. •
Các pallet ở phía sâu bên trong được đưa vào lấy ra bằng loại xe nâng. •
Khả năng chứa lượng hàng hóa nhiều hơn so với kệ Selective. •
Diện tích kho được tận dụng tối ưu. •
Pallet để vào sau lấy ra trước theo nguyên lý “Vào sau – Ra trước – (LIFO)”.
Hình 2.3 Kệ double deep - Kệ driver in:
Là loại kệ để hàng trong kho đồng nhất sản phẩm, có khả năng
lưu trữ mật độ hàng hóa lớn, hiệu quả đầu tư cao, loại bỏ diện
tích kho dành cho lối đi.
• Tối đa diện tích sử dụng trong kho. 11 lOMoARcPSD| 36006477
• Hàng hóa sâu bên trong vẫn có thể lấy ra dễ dàng nhờ hệ thống xe nâng.
• Phù hợp thiết kế với giải pháp “FILO” hoặc “FIFO”.
• Phù hợp chứa thực phẩm trong các ngành thủy sản, kho lạnh,…
• Giảm diện tích dành cho lối đi xe nâng hàng.
• Kệ Drive in đạt độ an toàn cao trong sử dụng.
Hình 2.4 Hệ thống kệ driver in
Dựa trên các tiêu chí đánh giá và các ưu, nhược điểm của các hệ thống kệ
trên em chọn khung kho hàng theo kiểu kệ selective nhưng đơn giản hơn để
phù hợp với đồ án của mình cũng như dễ dàng trong quá trình lắp đặt và sử dụng.
2.1.2 Phương án thiết kế cánh tay cơ khí
Vai trò của cánh tay robot: cánh tay robot là một phần không thể thiếu
trong hệ thống kho hàng tự động. Nó đóng vai trò vận chuyển hàng hóa ra
vào kho. Kích cỡ của cánh tay robot phụ thuộc nhiều vào kích cỡ của kho
hàng. Tùy thuộc vào hình dáng kho hàng cũng có những yêu cầu cụ thể mà
cánh tay robot có thể có số lượng bậc tự do khác nhau. Đối với các mô hình
kho chứa nhỏ cánh tay robot thường có ít nhất từ 3 đến 4 trục chuyển động.
Trong trường hợp đồ án này bao gồm ba chuyển động tịnh tiến theo hệ trục tọa độ Oxyz.
Hầu hết các robot đều sử dụng một trong ba loại truyền động: Khí nén, thủy lực, điện.
Truyền động khí nén sử dụng sức mạnh của khí nén. Những động cơ
này vốn đã đáng tin cậy do có ít bộ phận chuyển động, giá rẻ và phản ứng
nhanh, nhưng kém hơn về độ chính xác của tốc độ và kiểm soát vị trí. 12 lOMoAR cPSD| 36006477
Trong ngành công nghiệp robot, các cơ chế chủ yếu được sử dụng trong các
ứng dụng bật - tắt hoặc gắp và thả.
Ổ đĩa thủy lực là mối quan tâm của bạn nếu robot của bạn lớn hoặc có
nhiệm vụ xử lý tải trọng lớn. Chúng hoạt động dựa trên việc chuyển đổi năng
lượng từ chất lỏng thành hoạt động cơ học bằng cách bơm. Mặc dù các cơ
chế thủy lực đảm bảo điều phối vận tốc, chuyển động chính xác và có tỷ lệ
công suất trên trọng lượng phù hợp, chúng vẫn tạo ra tiếng ồn và cồng kềnh.
Cũng có những rủi ro liên quan đến rò rỉ hoặc với chất lỏng dịch vụ thay đổi
tính chất của nó ở các biến đổi nhiệt độ.
Động cơ điện là thiết bị cơ điện tạo ra chuyển động bằng cách biến
năng lượng điện thành cơ khí. Các bộ truyền động này là tùy chọn ưa thích
trong chế tạo robot bởi một số lý do sau: o Điện là một nguồn cung cấp
rộng rãi. o Các cơ chế này phù hợp cho tất cả các kích cỡ robot.
o Chúng nhỏ gọn và nhẹ nhưng có tỷ lệ chuyển đổi năng lượng
lớn, độ chính xác và độ lặp lại tuyệt vời.
o Ô nhiễm trong môi trường làm việc là bằng không. o Hệ
thống truyền động điện mạnh mẽ và dễ bảo trì.
Bên cạnh đó động cơ điện cũng có một số nhược điểm như khi tải
trọng lớn, sẽ cần sử dụng động cơ có công suất lớn dẫn đến giá thành cao;
kích thước, trọng lượng của động cơ càng lớn càng ảnh hưởng đến thiết kế
cơ khí. Vậy nên khi ứng dựng vào thực tế cần cân nhắc tải trọng của hàng
hóa để quyết định đến hình thức dẫn động cho cánh tay robot.
=>Trong đồ án kho hàng tự động lần này em sử dụng phương án dẫn động
bằng động cơ điện do động cơ được sử dụng phổ biến, nhỏ gọn, nhiều mức
công suất và nhiều chủng loạiđộng cơ để lựa chọn; động cơ truyền được
nhiều dạng chuyển động khi kết hợp với các cơ cấu truyền động khác nhau;
động cơ đem lại tính linh hoạt cao khi điều khiển được vị trí và tốc độ.
Phần khung của cánh tay robot, thực hiện các thao tác nâng hạ, vận
chuyển chính trong quá trình xuất nhập hàng hóa trong kho hàng. Để thiết kế
được khung cánh tay robot cũng cần phụ thuộc vào khung kho hàng cùng như diện tích kho hàng.
Vị trí tương quan giữa phần khung và phần cánh tay cơ khí:
- Thiết kế cánh tay cơ khí không gắn cứng vào phần khung kho hàng:
Ưu điểm của phương án này đó là phần khung và cánh
tay tách rời giúp dễ di chuyển và dễ tháo dời để sửa chữa.
Bên cạnh những ưu điểm, phương án thiết kế này cũng
tồn tại những nhược điểm như: bài toán định hướng di
chuyển trở nên phức tạp. Khung và cnahs tay robot dễ
bị xê dịch, không chắc chắn. Độ chính xác không cao
trong quá trình hoạt động.
- Thiết kế cánh tay cơ khí có phần đế gắn cứng vào khung kho hàng 13 lOMoARcPSD| 36006477
Phương án này cũng có các ưu điểm sau: khoảng cách
giữa phần khung và cánh tya robot luôn cố định. Việc
tính toán dẫn hướng cho cơ cấu chuyển động trở nên dễ
dàng. Chuyển động ít xuất hiện sai lệch đảm bảo sự chính xác nhất định.
Nhưng phương án này cũng tồn tại những nhược điểm
nhất định đó là: Phần khung và cánh tay robot gắn liền
với nhau dẫn đến việc công kềnh khi muốn di chuyển
hay tháo lắp sửa chữa. Chi phí chế tạo tốn kém hơn so
với cánh tay robot không lắp cứng.
=> trong đồ án này em sử dụng phần cánh tay robot gắn liền với phần
khung nhằm giảm thiểu sai lệch khí chuyển động cũng như tạo sự chắc chắn cho cơ cấu.
2.2 Tính toán khung vỏ
2.2.1 Lựa chọn vật liệu làm khung
Tùy thuộc vào trọng lượng của hàng hóa cũng như mục đích sử
dụng mà ta có thể sử dụng các vật liệu khác nhau để làm thành khung của
khó như: gỗ, sắt, nhôm, thép, … Thép hộp: - ưu điểm:
• Chi phí sản xuất thấp: Nguyên vật liệu để làm nên sản phẩm
thép hộp thường là những nguyên liệu dễ tìm kiếm, đơn giản
và giá thành rẻ. Bởi vậy nên sản phẩm thép hộp thường có chi
phí rẻ hơn so với các loại thép khác. Sử dụng thép hộp sẽ giúp
tiết kiệm được chi phí xây dựng công trình cho quý khách hàng.
• Tuổi thọ cao: Tuy được cấu thành từ những nguyên liệu giá rẻ
nhưng ngược lại thép hộp lại có tuổi thọ rất cao. Đặc biệt đối
với dòng sản phẩm thép hộp mạ kẽm thì độ bền còn được nhân
lên rất nhiều lần. Với khả năng chống bào mòn, không bị gỉ sét
nên tuổi thọ của các sản phẩm thường là từ 60 đến 70 năm tùy từng khu vực xây dựng.
• Dễ kiểm tra: Quý khách hàng rất đơn giản để nhìn thấy được
những mối bằng mắt thường ở trên thân của thép ống, bởi vậy
nếu xảy ra các vẫn đề ở các mối thì các kỹ sư cũng đơn giản
hơn trong việc khắc phục và sử chữa.
- Nhược điểm: phương pháp để ghép nối thường là hàn nên thẩm mĩ kém. 14 lOMoARcPSD| 36006477 Hình 2.5 thép hộp Khung sắt đa năng: -ưu điểm:
• Tiện lợi dễ lắp ráp, có thể mua nguyên khung thay vì lắp ghép.
Chúng có thể tìm mua ở bất cứ đâu như các cửa hàng bán giá kệ hay của hàng sắt
• Tuổi thọ cao: được sản xuất từ sắt một nguyên liệu có giá thành
rẻ nhưng lại có tuổi thọ rất cao. Đặc biệt là đối với các loại sắt
đã được sơn mạ một lớp chống han gỉ.
• Chịu lực tốt: được cấu thành từ sắt cứng nên khả năng chịu lực là rất tốt. - Nhược điểm: • Gía thành cao
• Trọng lượng khung nặng • Tính thẩm mĩ kém 15 lOMoARcPSD| 36006477
Hình 2.6 khung sắt đa năng Nhôm định hình: - Ưu điểm:
• Chịu lực tốt: Là sản phẩm được cấu thành từ nguyên liệu nhôm
hợp kìm nên nhôm có khả năng chịu lực tốt. Thông thường
thanh nhôm định hình có thiết kế các khoang rỗng để tăng độ
cứng như chiều dày của nhôm, các ranh nhôm và các vách kỹ
thuật đều được đo và thiết kế cẩn thận nhất. Sản phẩm Nhôm
định hình có các cầu nối cách nhiệt, các gân tăng cứng và các
rãnh khoảng trống nhiều nên làm tăng được khả năng chịu lực của sản phẩm.
• Độ thẩm mỹ cao: Các cửa kính làm từ nhôm định hình có tính
thẩm mỹ cao, vách nhôm tuy có độ dày mỏng hơn các thương
hiệu khác nhưng lại có kết cấu lớn nên vừa tăng được tính
thẩm mỹ lại đảm bảo được khả năng chịu lực từ bên trong.
Quý khách có thể yêu cầu phối hợp với các màu kình khác
nhau để phù hợp với không gian sống cũng như màu sắc chủa đạo của ngôi nhà.
• Cách nhiệt và cách âm tốt: Nhôm định hình có khả năng chịu
nhiệt độ cao, các phẩn tử nhôm liên kết chặt chẽ tạo nên một
hệ khung nhôm cửa kính có khả năng cách âm tốt.
• Trọng lượng nhẹ: Trọng lượng của nhôm định hình là nhẹ nhất
vởi nguyên liệu sản phẩm có độ dày mỏng nhất. Thế nên sẽ
làm giảm được tải trong và sức ép cho các công trình, đồng
thời cũng giúp dễ di chuyển và lắp đặt hơn. - Nhược điểm:
• Chưa có nhiều mẫu mã cho khách hàng lựa chọn.
• Tuổi thọ: Sau nhiều năm sử dụng sản phẩm Nhôm định hình
cần được bảo dưỡng và thay thế để đảm bảo.
Trong khuôn khổ đồ án lần này, em chọn sử dụng nhôm định hình để
làm khung cho kho hàng tự động vì những ưu điểm của nhôm định hình đáp 16 lOMoARcPSD| 36006477
ứng được các nhu cầu đề ra và các hàng hóa sử dụng trong đồ án này cũng có tải trọng nhỏ.
Hình 2.1 Nhôm định hình
2.2.2 Thiết kế khung kho hàng
Khung kho hàng được hình thành bằng việc ghép các mối nối lại với
nhau bằng các mối nối. Kích thước của kho hàng được xác định dựa trên số
lượng các ô chứa hàng với các giá trị mà ta mong muốn.
Trong mô hình kho hàng của đồ án với yêu cầu kho hàng có sáu ô
chứa hàng chia thành hai tầng.
Ô chứa hàng có kích thước được lựa chọn là 200x200x200(mm)
Bên cạnh khung hàng là khu vực để cánh tay robot. Khu vực này đặt
cánh tay cao 600(mm) rộng 200(mm) và dài 480(mm). phần cánh tay cơ khí
được thiết kế nhỏ gọn đảm bảo không gian hoạt động nằm trong phần khung kho hàng.
Khoảng cách từ mặt đất đến vi trí có ô chứa hàng là 200(mm).
Từ các thông tin trên ta tính toán được chiều dài , chiều rộng và chiều
cao của khung kho hàng như sau:
- Chiều dài khung kho hàng: 200 + 200 + 200 + 200 = 800(mm)
- Chiều cao khung kho hàng: 200 + 200 + 200 = 600(mm)
- Chiều rộng khung kho hàng: 200 + 480 + 200 = 880(mm)
Ta sử dụng các thanh nhôm định hình với hình dạng có sẵn để ghép
nối thành khung kho hàng hoàn chỉnh với các kích thước đã tính toán sẵn ở trên.
Phần đế của các ô chứa dùng để đặt vật liệu hoặc các chi tiết có khối
lượng không đáng kể. Nên ta sử dụng đế làm bằng những tấm nhựa mica kích thước 200x800x50(mm)
Kiểm tra độ bền cho thanh nhôm định hình cới kích thước 40x40
- Kiểm tra độ bền cho thanh ngang dài 88cm
Sử dụng phần mềm Inventor để kiểm tra độ bền cho thanh nhôm định hình. 17 lOMoARcPSD| 36006477
Mở inventor -> open file -> chọn environments -> chọn stress
analysis -> chọn create simulation.
Khi khởi tạo xong môi trường giả lập trình tự thực hiện như sau:
Chọn vật liệu là nhôm 6061.
Hình 2.2 Chọn vật liệu
Cố định các đầu nối cứng. Hình 2.3 Gắn cứng
Chọn bề mặt tác dụng lực và giá trị lực tác dụng. Bề
mặt lực tác dụng là bề mặt thanh nhôm định hình
nằm ngang. Điểm đặt lực vào giữa thanh với chiều
gướng từ trên xuống. giá trị lực đặt là 13N 18 lOMoARcPSD| 36006477
Hình 2.10 Đặt lực
Chọn simulate để mô phỏng.
Hình 2.4 Chạy mô phỏng
Sau mô phỏng ta thu được giá trị úng suất max và min
Hình 2.5 Ứng suất sau khi mô phỏng
Chọn safety factor để hiển thị hệ số an toàn
Hình 2.13 Hệ số an toàn
Để đảm bảo độ bền thì hệ số an toàn phải lớn hơn 1. Trong
trường hợp này với hệ số an toàn là 15 lớn hơn nhiều so với
yêu cầu nên thanh nhôm đảm bảo được yêu cầu về độ bền. vì
hệ số an toàn của thanh nhôm lớn hơn nhiều so với yêu cầu nên
ta có thể giảm kích cỡ của thanh nhôm đi. Nhưng do thanh
nhôm được sản xuất có các kích cỡ xác định là 20x20(mm),
40x40(mm)… nên không thể tùy tiện thay đổi kích thước. kích
thước có thể giảm xuống 20x20(mm) và vẫn đảm bảo độ bền.
Nhưng do thiết kế của nhôm định hình kích thước 20x20(mm)
không có tính thẩm mĩ cao. Giá thành chênh lệch giữa 2 kích
cỡ là không đáng kể. Nên vẫn chọn kích thước 40x40 cho đồ án này.
- Kiểm tra độ bền cho thanh đứng dài 600(mm) 19 lOMoARcPSD| 36006477
Các bước thực hiện tương tự như khi kiểm tra độ bền
cho thanh nhôm định hình nằm ngang và chỉ khác kích thước
và vị chí đặt lực. Đối với hai thanh đứng có 2 lực tác dụng.
Một là lực nén của các thanh nhôm định hình nằm ngang đè
lên. Hai là lực khi cơ cấu chuyển động làm rung động làm rung
lắc khung kho hàng gây nên.
Hình 2.6 hệ số an toàn của thanh đứng
Hệ số an toàn rất lớn. Thanh nhôm siêu bền. Để phục vụ
cho việc tìm mua một cách tiện lợi và lắp ghép khung có tính
thẩm mĩ cao. Nhôm định hình có kích thước 40x40(mm) được
lựa chọn để xây dựng lên cả khung nhôm của kho hàng.
Mối nối sử dụng để lắp ghép có hình dạng như sau: 20 lOMoARcPSD| 36006477 Hình 2.15 Mối ghép
2.3 Tính toán hệ truyền động
Hệ truyền động của cánh tay cơ khí thực hiện việc điều khiển quá trình hoạt
động của cánh tay. Có 3 chuyển động chính là 3 chuyển động thẳng tính tiến. Các
trục chuyển động tương ứng với hệ trục tọa độ Oxyz.
2.3.1 Cơ cấu vít me- đai ốc trượt
Vít me – đai ốc là cơ cấu truyền động biến truyền động quay thành
chuyển động tịnh tiến. Truyền đông vít me – đai ốc có 2 loại là vít me – đai
ốc trượt và vít me đai ốc bi.
Cơ cấu vít me-đai ốc trượt có những đặc điểm sau:
- Độ chính xác truyền động cao, tỷ số truyền lớn.
- Truyền động êm, có khả năng tự hãm, lực truyền lớn.
- Có thể truyền động nhanh với vít me có bước ren hoặc số vòng quay lớn.
- Hiệu suất truyền động thấp nên ít dùng để thực hiện những chuyển động chính.
Kết cấu vít me- đai ốc trượt:
Dạng ren: Vít me thường có 2 dạng ren chủ yếu là:
- Ren có dạng hình thang với góc 300 có ưu điểm: gia công đơn
giản, có thể phay hoặc mài. Nếu dùng với đai ốc bổ đôi thì có
thể đóng mở lên ren dễ dàng.
- Ren có hình dạng vuông chỉ dùng ở những máy cắt ren chính
xác và máy tiện hớt lưng.
Về mặt kết cấu nên chế tạo vít me với 2 cổ trục giống như nhau để sau
một thời gian sử dụng, có thể lắp đảo ngược vít me lại nhằm làm cho
bề mặt làm việc của vít me được mòn đều ở 2 bên
Ổ đỡ vít me: ổ đỡ vít me có tác dụng đảm bảo cho trục chuyển động
với độ đảo hướng trục và độ hướng kính nhỏ. 21 lOMoARcPSD| 36006477
Hình 2.16 Kết cấu vít me đai ốc
Đai ốc liền: dùng trong cơ cấu vít me – đai ốc có chế độ làm việc ít,
không yêu cầu độ chính xác cao, giữa các ren có thể có độ hở nhất định.
Ưu điểm của đai ốc liền là đơn giản, giá thành thấp, có thể tự hãm ỡ mức độ nhất định.
Đai ốc 2 nửa: sử dụng để đóng, tách đai ốc khỏi vít me khi tiện vít me trên máy tiên vạn năng.
Để giảm độ biến dạng của vít me có thể dùng những phương pháp sau: •
Nâng cao cứng vững của gối đỡ bằng cách dùng bạc với tỷ lệ l/d
lớn (với l là chiều dài và d là đường kính trong của gối đỡ). •
Không bố trí vít me ở ngoài thân máy mà bố trí phía trong máy
nhằm giảm momen lật của bàn máy. •
Dùng gối đỡ treo phụ cho những vít me quá dài và nặng.
2.3.2 Cơ cấu vít me bi
Cơ cấu đai ốc vit me bi là cơ cấu chấp hành trượt dẫn hướng được sử
dụng trong nhiều máy móc công nghiệp hiện nay. Cơ cấu bao gồm 3 bộ phận
chính: đai ốc vitme bi, trục vít me và gối đỡ trục vit me.
Đai ốc vitme bi có cấu tạo dạng ổ bi, gồm phần vỏ ngoài và lớp bên trong có các rãnh bi.
Trục vitme bi đâm xuyên qua đai ốc vitme bi. Giữa hai thiết bị này có
một lớp bi thép, chạy dọc theo các rãnh của đai ốc vitme bi. Nhờ có lớp bi
thép này, quá trình truyền động của máy móc sẽ ít ma sát, trơn tru, mượt mà hơn. 22 lOMoARcPSD| 36006477
Gối đỡ trục vitme là thiết bị có vai trò giữa trục vitme để dẫn động
vitme bi theo động cơ thông qua khớp nối.
Ba thành phần này tạo thành cơ cấu đai ốc vitme bi hoàn chỉnh có vai
trò chuyển đổi từ chuyển động quay sang chuyển động tịnh tiến.
Hình 2.17 Cơ cấu vít me đai ốc bi
Cơ cấu vít me đai ốc bi có những đặc điểm sau : •
Tổn thất ma sát ít nên có hiệu suất cao, có thể đạt từ 90 – 95 %. •
Lực ma sát gần như không phụ thuộc vào tốc độ chuyển động nên
đảm bảo chuyển động ở nhựng vận tốc nhỏ. •
Hầu như không có khe hở trong mối ghép và có thể tạo ra lực căng
ban đầu, đảm bảo độ cứng vững hướng trục cao.
Vì những ưu điểm đó vít me đai ốc bi thường được sử dụng cho những
máy cần có truyền động thẳng chính xác như máy khoan, doa tọa độ, các
máy điều khiển chương trình số.
Hình 2.18 Cấu tạo cơ cấu vít me đai ốc bi
Giữa các rãnh của đai ốc 1 và vít me 2, người ta đặt những viên bi 3,
vì vậy biến ma sát trượt trở thành ma sát lăn của những viên bi chuyển động
một cách liên tục. Nhờ máng nghiêng 4 mà bi được dẫn từ rãnh cuối về rãnh đầu. 23 lOMoARcPSD| 36006477
Rãnh của vít me – đai ốc bi được chế tạo dạng cung nửa vòng tròn hoặc rãnh.
Để điều chỉnh khe hở vít me – đai ốc bi, đai ốc kép được sử dung.
Giữa các đai ốc 1 và 2, đặt vòng căng 3. Khi xiết chặt vít 4, các rãnh của 2
đai ốc sẽ tì sát vào bề mặt bi, khử được khe hở giữa vít me và đai ốc đồng
thời tạo được lực căng ban đầu.
2.3.3 Truyền động đai
Truyền động đai là truyền động bằng phương tiện kéo. Chúng truyền
mômen xoắn và tốc độ giữa hai trục, và có thể có một khoảng cách lớn hơn
so với bộ truyền bánh răng. Vì tất cả các dây làm bằng nhựa hoặc vải dệt,
đặc tính của chúng khác biệt đáng kể với các bộ truyền bánh răng hoặc xích.
Bộ truyền đai là bộ truyền cơ khí được sử dụng sớm nhất và hiện nay
vẫn được sử dụng rông rãi, có nhiều loại đai như đai thang, đai dẹt, đai răng, ….
Hình 2.19 Mô hình truyền động đai
So với các bộ truyền khác bộ truyền đai có những ưu điểm như: •
Truyền động giữa các trục xa nhau •
Làm việc êm và không ồn do độ bền và dẻo của đai do đó có thể truyền động với vận tốc cao •
Tránh cho cơ cấu không có sự dao động nhờ vào sự trượt trơn của đai khi quá tải •
Kết cấu và vận hành đơn giản.
Tuy nhiên nó cũng tồn tại những nhược điểm như: •
Hiệu suất bộ truyền thấp. 24 lOMoARcPSD| 36006477 •
Tỷ số truyền thay đổi do sự trượt đàn hồi giữa bánh đai và đai. • Tuổi thọ đai thấp. •
Kích thước bộ truyền lớn. •
Tải trọng tác dụng lên trục lớn do phải căng đai ban đầu.
Các loại dây đai: Các dây đai được phân chia theo loại kéo theo qua các
đai không có răng (lực ma sát) và đai có răng (dạng cứng).
- Dây đai không răng: Dây đai không răng truyền lực kéo qua ma
sát giữa bề mặt chạy của dây đai và pu li (bánh đai truyền). Theo
hình dạng của bề mặt chạy ta phân biệt dây đai dẹt và đai hình thang.
1. Dây đai dẹt (dây đai bản, dây đai phẳng):Các lực chu vi trên
bánh dẫn và do đó các mômen xoắn có thể truyển phụ
thuộc cơ bản vào tính chất của lực căng, hệ số ma sát giữa
đai và bánh cũng như góc ôm.
Cấu tạo: Dây đai bản (dẹt) thường được tạo thành bằng hai
hoặc nhiều lớp. Lớp chạy được làm bằng da cứng (da
crom), có một hệ số ma sát tốt hơn bề mặt chạy bằng thép
hay bằng gang. Lớp kéo này được làm bằng nhựa với độ
bền kéo cao và giãn nở ít.
Tính năng đặc biệt. Qua tính linh hoạt cao, dây đai có thể
đạt được tỷ số truyền động 20:1, khoảng cách nhỏ giữa các
trục, tốc độ dây đai cao (lên đến 100 m/s)
Thí dụ ứng dụng: Bộ truyền động cho máy công cụ, máy
dệt, máy làm giấy và bộ truyền động của băng chuyền con lăn, băng tải. 25 lOMoARcPSD| 36006477 Hình 2.20 Đai dẹt
2. Đai hình thang (cu roa hình thang): Khi chịu tải, đai hình
thang được kéo vào các rãnh của bánh và ép váo các hông
rãnh. Lực thẳng góc lớn được thành hlnh cho phép lực ma
sát lớn và truyền các mômen xoắn lớn
Cấu tạo: Đai hình thang được làm bằng một sợi dây kéo
polyester, một lõi cao su được gia cố một phần bằng sợi
ngang, và bọc ngoài bằng loại vảí chống mài mòn. Đai hình
thang với cạnh để mở thì không có bọc ngoài.
Tính chất đặc biệt. Qua kết nối bằng ma sát lớn được tạo ra
bởi hiệu ứng nêm, lực căng ban đầu cần thiết thấp hơn so
với dây đai dẹt. Nhờ tiết diện cao nên sức kháng uốn cong
tương đối cao. Nó có thể được giảm khi phần dưới của đai có răng.
Hình 2.20 Đai hình thang
- Dây đai đồng bộ (Dây đai răng)
Đối với dây đai đồng bộ lực truyền không qua ma sát mà
qua dạng các răng của đai (kết nối dạng khớp). Dây đai răng kết
hợp những ưu điểm của dây đai dẹt và dây đai hình thang với sự
không có độ trượt của dây xích.
Các loại: Dây đai đồng bộ (răng) được sản xuất như răng
đơn, răng đôi và với nhiều hình dạng răng khác nhau .
Đặc tính nổi bật: Đặc điểm của dây đai đồng bộ (răng) là
sức căng ban đầu thấp và do đó chịu tải ít. Nó rất thích hợp cho
việc truyền không có độ trượt với công suất vừa và nhỏ. 26 lOMoARcPSD| 36006477
Thí dụ ứng dụng: Bộ truyền động bước dẫn tiến trong máy
công cụ, máy sao chép ,máy in, máy bán hàng tự động bằng tiền
xu, truyền động trục cam.
Hình 2.22 Dây đai răng
Qua việc phân tích các cơ cấu truyền động trên em quyết định chọn
cơ cấu truyền động đai cho đồ án của mình.
2.4 Mô hình cánh tay robot và kho hàng tự động 27 lOMoARcPSD| 36006477
Hình 2.23 Lắp ráp mô hình
Hình 2.24 Cánh tay cơ khí
Hình 2.7 Mô hình kho hàng tự động 28 lOMoARcPSD| 36006477
CHƯƠNG 3 XÂY DỰNG BỘ ĐIỀU KHIỂN KHO HÀNG TỰ ĐỘNG
3.1 Tính toán lựa chọn động cơ
Động cơ là một phần vô cùng quan trọng trong cơ cấu truyền động của tay
máy cơ khí trong việc nhập xuất hàng hóa. Vậy nên việc lựa chọn động cơ phù hợp là vô cùng cần thiết.
Một số động cơ thường được sử dụng như: động cơ một chiều , động cơ step
và động cơ servo. Cả ba loại động cơ này đều được ứng dụng rất phổ biến trong các
dự án, các đồ dùng hàng ngày. Mỗi loại động cơ đều có những ưu và nhược điểm
khác nhau nên cần cân nhắc khi lựa chọn loại động cơ phù hợp.
3.1.1 Động cơ một chiều
- Cấu tạo: Cấu tạo động cơ 1 chiều cũng tương tự như các động cơ
chạy điện khác cũng có 2 phần chính là Rotor (phần quay) và
Stator (phần vỏ của động cơ):
Hình 3.1 cấu tạo động cơ một chiều •
Stator: có kết cấu là nam châm vĩnh cửu, hoặc nam châm điện. •
Rotor: cấu tạo trục có quấn các cuộn dây tạo thành nam châm điện. •
Cổ góp (commutator): tiếp xúc để truyền điện cho các cuộn
dây trên rotor. Số điểm tiếp xúc tương ứng với số cuộn dây quấn trên Rotor. 29 lOMoARcPSD| 36006477 •
Chổi than (brushes): tiếp xúc và tiếp điện cho cổ góp •
Một phần cũng khá quang trọng là bộ phận chỉnh lưu,
nhiệm vụ chính của nó là biến đổi dòng điện trong khi Rotor quay liên tục
- Căn cứ vào phương pháp kích từ, có thể chia động cơ điện 1 chiều
thành những dòng chính như sau: •
Động cơ điện 1 chiều kích từ bằng nam châm vĩnh cửu •
Động cơ điện 1 chiều kích từ độc lập •
Động cơ điện 1 chiều kích từ nối tiếp •
Động cơ điện 1 chiều kích từ song song •
Động cơ điện 1 chiều kích từ hỗn hợp bao gồm 2
cuộn dây kích từ, 1 cuộn được mắc nối tiếp với phần ứng, 1
cuộn được mắc song song với phần ứng.
- Nguyên lí làm việc: động cơ điện một chiều hoạt động dựa trên
hiện tượng cảm biến điện từ trường.
Pha 1: Từ trường của cuộn dây Rotor cùng cực với
Stator => Từ trường cùng cực sẽ đẩy nhau => Sẽ tạo chuyển động quay của Rotor. Hình 3.2 pha1
Pha 2: Rotor tiếp tục quay. 30 lOMoARcPSD| 36006477 Hình 3.3 pha 2
Pha 3: Bộ phận chỉnh điện sẽ đổi cực sao cho từ trường
giữa stator và rotor cùng dấu, trở lại pha 1. Hình 3.4 pha 3
- Ưu điểm và nhược điểm của động cơ một chiều Ưu điểm
của động cơ một chiều:
• Dễ dàng thay đổi tốc độ của động cơ, chịu được quá tải cao.
• Kéo được tải nặng khi khởi động do có moment xoắn lớn.
Độ bền tương đối cao.
Nhược điểm của động cơ một chiều:
• Do có cấu tạo cổ góp nên khi hoạt động phát ra tiếng ồn.
• Cổ góp này phải được bảo dưỡng thường xuyên.
• Ma-sat trong quá trình vận hành => mài mòn.
• Ngoài ra cổ góp này trong quá trình hoạt động phát sinh ra
tia lửa điện, nên không dùng được trong các môi trường dễ gây cháy nổ. 31 lOMoARcPSD| 36006477
- Ứng dụng của động cơ điện một chiều: •
Động cơ một chiều được dùng nhiều trong các máy công cụ
lớn, yêu cầu tốc độ và số vòng quay cao. •
Động cơ 1 chiều chúng ta thường thấy nhất là trong các
ứng dụng đồ chơi, xe mô hình, động cơ sử dụng pin để hoạt
động là động cơ một chiều hết nha các bạn. •
Như vậy động cơ 1 chiều được ứng dụng trong hầu hết các
thiết bị như: ổ đĩa, máy photocopy,….
3.1.2 Động cơ servo
Động cơ servo là một phần của hệ thống vòng kín và bao gồm một số
bộ phận là mạch điều khiển, động cơ servo, trục, chiết áp, bánh răng truyền
động, bộ khuếch đại và bộ mã hóa hoặc bộ giải.
Động cơ servo là một thiết bị điện khép kín. Nó được dùng để xoay
các bộ phận của máy với hiệu suất cao và độ chính xác cao.
Trục đầu ra của động cơ này có thể được di chuyển đến một góc, vị trí
và vận tốc cụ thể mà động cơ thông thường không có.
Động cơ Servo sử dụng một động cơ thông thường và kết hợp nó với
một cảm biến để phản hồi vị trí.
Bộ điều khiển là bộ phận quan trọng nhất của Động cơ Servo được
thiết kế và sử dụng riêng cho mục đích này.
Động cơ được điều khiển bằng tín hiệu điện, tương tự hoặc kỹ thuật
số, xác định mức độ chuyển động đại diện cho vị trí lệnh cuối cùng cho trục. - Cấu tạo:
Động cơ DC servo có chổi than: loại động cơ này gồm bốn bộ
phận chính là stato, roto, chổi than và cuộn cảm lõi. 32 lOMoARcPSD| 36006477
Hình 3.5 cấu tạo động cơ servo
Động cơ DC servo không chổi than: cấu trúc loại động cơ này
tương đối giống với động cơ có chổi than nhưng điều khác biệt
là các cuộn pha được lắp ở rotor là động cơ vĩnh cửu. Hoạt
động êm và không gây tiếng ồn nên thường được sử dụng rộng rãi và phổ biến. - Phân loại:
Các loại Động cơ Servo được phân loại thành các loại khác
nhau dựa trên ứng dụng của chúng. Ví dụ như động cơ servo
AC và động cơ servo DC => Phân loại dựa trên loại dòng điện sử dụng.
• Động cơ Servo dùng điện áp DC, có tốc độ tỷ lệ thuận
với điện áp cung cấp với tải không đổi
• Động cơ Servo loại dùng điện áp xoay chiều, tốc độ
được xác định bởi tần số của điện áp đặt vào và số cực từ.
Hình 3.6 Phân loại động cơ servo
- Nguyên lí làm việc:
Rotor của động cơ là một nam châm vĩnh cửu có từ trường
mạnh và stator của động cơ được cuốn các cuộn dây riêng biệt,
được cấp nguồn theo một trình tự thích hợp để quay rotor. Nếu
thời điểm và dòng điện cấp tới các cuộn dây là chuẩn xác thì
chuyển động quay của rotor phụ thuộc vào tần số và pha, phân
cực và dòng điện chạy trong cuộn dây stator.
Động cơ servo được hình thành bởi những hệ thống hồi tiếp
vòng kín và tín hiệu đầu ra của động cơ được nối với một
mạch điều khiển. Khi động cơ vận hành thì vận tốc và vị trí sẽ
được hồi tiếp về mạch điều khiển này. Khi đó bất kỳ lý do nào 33 lOMoAR cPSD| 36006477
ngăn cản chuyển động quay của động cơ, cơ cấu hồi tiếp sẽ
nhận thấy tín hiệu ra chưa đạt được vị trí mong muốn. Mạch
điều khiển tiếp tục chỉnh sai lệch cho động cơ đạt được điểm
chính xác nhất. Bộ điều khiển servo.
- Ưu điểm và nhược điểm của động cơ servo Ưu điểm:
• Là hệ thống hồi tiếp vòng kín chính vì vậy động cơ
servo DC rất dễ điều khiển, dễ sử dụng.
• Bên cạnh đó động cơ còn giúp kiểm soát tốc độ chính
xác, đảm bảo quá trình vận hành được ổn định.
• Hiện nay giá thành của động cơ Servo DC rẻ hơn so với
các loại động cơ khác. Nhược điểm:
• Vì cấu tạo có bộ phận chổi than nên điểm hạn chế lớn
nhất của loại động cơ này chính là dễ gây ra tiếng ồn,
nhiệt độ cao khi vận hành và quán tính cao khi giảm tốc độ.
• Nếu sử dụng động cơ DC servo không chổi than thì sẽ
khiến động cơ chạy êm và vận hành tốt hơn. - Ứng
dụng của động cơ servo:
Có rất nhiều máy móc sử dụng động cơ DC servo để hoạt
động. Cụ thể động cơ DC servo có thể ứng dụng trong ngành
điện - điện tử (ví dụ như lắp các chip LSI trên bảng mạch).
Tuy nhiên, hiện nay động cơ DC servo rất hạn chế trong ứng
dụng ngành điện - điện tử mà thay vào đó động cơ có ứng
dụng chủ yếu trong ngành sản xuất thực phẩm, đồ uống và ứng
dụng trong ngành giấy, may mặc, bao bì.
Ngoài ra động cơ DC servo còn có một số ứng dụng khác như:
• Ứng dụng trong sản xuất robot vì sự chuyển động trơn
tru và định vị chính xác
• Ứng dụng trong các loại đồ chơi điều khiển bằng radio
• Ứng dụng trong sản xuất các loại thhieets bị điện tử như
đĩa DVD, máy nghe nhạc blue
• Ứng dụng trong xe ô tô để duy trì tốc độ của phương tiện 34 lOMoARcPSD| 36006477
Một số sản phẩm nổi bật sử dụng động cơ DC servo: Động Cơ
DC Servo giảm tốc GA12 - N20 Encoder, động cơ DC Servo
JGB37-545 DC Geared Motor, động cơ DC Servo Giảm Tốc Hành Tinh Planetary GP36,...
3.1.3 Động cơ bước(Step)
Động cơ Step hay còn gọi là động cơ bước, đây là một loại động cơ
chạy bằng điện khác biệt với đa số các loại động cơ thông thường. Loại động
cơ này có bản chất là dùng để biến đổi các tín hiệu điều khiển dưới dạng các
xung điện rời kế tiếp nhau thành các chuyển động góc quay hay chuyển động
của rotor có khả năng cố định rotor vào các vị trí phù hợp. - Cấu tạo:
Cấu tạo của động cơ bước (step) bao gồm các bộ phận như:
stato, rotor (nam châm vĩnh cửu). Trong đó;
• Bộ phận rotor: là một dãy các nam châm vĩnh cửu được
xếp chồng lên nhau một cách tỉ mỉ. Tại các lá nam châm
là các cặp cực xếp đối xứng nhau một cách đều đặn.
• Bộ phận stato: Được tạo bằng sức từ và chia thành các
rãnh để đặt cuộn dây
Hình 3.7 Cấu tạo động cơ bước - Phân loại:
Hiện nay có rất nhiều loại động cơ bước, tuy nhiên dựa vào
các cách phân loại mà ta chia động cơ bước thành nhiều loại như:
Động cơ Step theo số pha động cơ: 35 lOMoAR cPSD| 36006477 •
Động cơ Step 2 pha tương ứng với góc bước 1.8 độ •
Động cơ bước 3 pha tương ứng với góc bước 1.2 độ •
Động cơ bước 5 pha tương ứng với góc bước 0.72 độ Động cơ Step theo rotor: •
Động cơ rotor được tác dụng bằng dây quấn nam châm vĩnh cửu •
Động cơ thay đổi từ trở (loại động cơ này có sự đặc biệt
là bộ phận rotor động cơ không được tác động nhưng có phần tử cảm ứng) Động cơ Step theo cực •
Động cơ đơn cực Động cơ lưỡng cực -Nguyên lí làm việc:
Khác với các loại động cơ khác trên thị trường là quay theo cơ
chế truyền thống, động cơ bước (step) quay theo từng bước
một nên đảm bảo được độ chính xác về mặt điều khiển học.
Nguyên lý hoạt động của động cơ bước Step chủ yếu là nhờ
các bộ chuyển mạch điện tử. Khi đó các mạch điện tử sẽ đưa
các tín hiệu của lệnh điều khiển vào stato theo thứ tự và một tần số nhất định.
Tổng số lần chuyển mạch sẽ tương ứng với tổng số góc quay
của rotor. Đồng thời chiều quay và tốc độ quay của rotor thì
phụ thuộc vào thứ tự chuyển đổi và tần số chuyển đồ của mạch.
- Ưu điểm và nhược điểm của động cơ bước: Ưu điểm: •
Khả năng cung cấp moment xoắn cực lớn ở dải vận tốc thấp và trung bình •
Động cơ bước cho hoạt động bền bỉ với thời gian •
Giá thành loại động cơ này thấp, phải chăng •
Thay thế hay bảo trì động cơ dễ dàng Nhược điểm: •
Động cơ Step có nguồn lực từ yếu, nguồn cấp điện vào
không đủ nên việc sử dụng động cơ bước rất hay bị
trượt bước. Cũng chính vì điều này mà đối với ngành
công nghiệp động cơ step không được dùng ở các công
nghệ đòi hỏi tốc độ cao. 36 lOMoAR cPSD| 36006477 •
Trong quá trình hoạt động động cơ Step thường gây ra
tiếng ồn và có hiện tượng nóng dần. Tuy nhiên hiện nay
các loại động cơ step đã gần khắc phục được điều này
mà thay vào đó là động cơ cho hoạt động khá êm và độ nóng cũng giảm. - Ứng dụng:
Hiện nay người ta thường áp dụng động cơ bước (step) trong
điều khiển chuyển động kỹ thuật số là chủ yếu. Nó cũng được
thực hiện bởi các lệnh mã hóa dưới dạng số.
Bên cạnh đó động cơ Step còn được ứng dụng trong ngành tự
động hóa như: máy cắt plasma CNC, máy cắt cnc,.. các loại cần sự chính xác cao.
Mặt khác, động cơ bước (step) cũng được sử dụng cho các loại
ổ đĩa cứng, ổ đĩa mềm, máy in,...
=> Kết luận: qua những phân tích ở trên động cơ được lựa
chọn là động cơ bước vì bài toán đạt ra cần yêu cầu điều khiển vị trí
chính xác cũng như dễ dàng thiết lập và điều khiển. Ngoài ra động cơ
bước còn có kích thước cũng như thẩm mĩ phù hợp đa dạng nên dễ lựa chọn.
3.1.4 Lựa chọn động cơ
Động cơ bước được em lựa chọn là động cơ bước size 42 1.8 step với
các thông số kĩ thuật như sau: •
Sử dụng rất nhiều cho máy in 3D, khắc laser, cơ cấu máy, robot • 2 pha – 4 dây •
Chiều dài động cơ: 48mm • Đường kính trục: 5mm • Nguồn điện: DC •
Chức năng: Động cơ điều khiển • Momen xoắn lớn • Tiếng ổn thấp • Góc bước: 1.8° ± 0.09° • Điện áp: DC – 1.5A •
Tần số khi động cơ chạy không tải: >1500PPS 37 lOMoARcPSD| 36006477 •
Tần số bắt đầu không tải: 1900 PPS •
Khối lượng động cơ: 255g •
Độ tự cảm: 3.7 x (1 ± 20%) mH •
Điện trở cuộn dây: 2.4 x (1 ± 15%) Ω • Lớp cách điện: Loại B
Hình 3.8 Động cơ bước size 42-1.8step
Thông số kích thước động cơ:
Hình 3.9 Thông số kích thước động cơ
3.1.5 Lựa chọn driver điều khiển 38 lOMoARcPSD| 36006477
Hiện nay có rất nhiều driver điều khiển cho động cơ bước như:
DRV8825, TMC2208, TB6560, A4988, A3967... Các driver này đa dạng về
hình dạng mẫu mã cũng như các ứng dụng của chúng.
- Thông số kĩ thuật của DRV8825:
• Điện áp cung cấp: 8.2~45VDC
• Dòng trung bình (RMS): 1.5A , dòng đỉnh ( Peak) lên đến 2.5A.
• 6 độ phân giải bước khác nhau: full, half step, 1/4 step,
1/8 step, 1/16 step, 1/32 step.
• Điện áp điều khiển: 3.3V và 5V. Tự động shutdown
khi quá nhiệt, quá dòng Bảo vệ ngắn mạch và bảo vệ quá tải.
• Mạch 4 lớp,2 lớp phủ đồng giúp cải thiện khả năng tản nhiệt.
• Có thể thay thế tốt cho Driver A4988 trong máy in 3D.
Mạch điều khiển động cơ bước DRV8825 với đầy đủ các tính
năng của môt driver chuyên nghiệp: điều chỉnh dòng giới hạn,
vi bước (1/32 bước) ,bảo vệ quá dòng, quá nhiệt,v.v…
Hoạt động ở dải điện áp cao từ 8.2V đến 45V và có thể đạt
được xấp xỉ 1,8A trên mỗi pha mà không cần tản nhiệt. Driver
có các chân ra và bề mặt gần như đồng nhất với module A4988
vì vậy nó có thể dùng thay thế cho board đó trong nhiều ứng dụng khác nhau. 39 lOMoARcPSD| 36006477 Hình 3.10 DRV8825
- Thông số kĩ thuật của TCM2208: • Chip: TMC2208
• Điện áp hoạt động: 4.75 ~ 36VDC
• Dòng làm việc hiện tại: 1.2A • Dòng điện max: 2A
• Step/dir lên tới 256 microsteps
• Tương thích chế độ: UART
• Kích thước: 20.2 x 15.4mm • Trọng lượng: 10g
Mạch điều khiển động cơ bước TMC2208 V1.2 là driver điều
khiển động cơ bước cực kỳ nhỏ gọn, hổ trợ nhiều chế độ làm
việc, điều chỉnh được dòng ra cho động cơ. Mạch sử dụng chip
TMC2208 có thể cung cấp tới 256 microsteps/bước, dải điện áp rộng 4.75 ~ 36VDC.
Mạch điều khiển động cơ bước này có kích thước nhỏ gọn,
hoạt động ổn định, giúp động cơ chuyển động mượt mà. Hình 3.11 TCM2208
- Thông số kĩ thuật của TB6560:
• Điện áp hoạt động: 10-35VDC. Dòng tải tối đa: 3A, peak 3.5A. 40 lOMoARcPSD| 36006477
• Tích hợp Opto cách ly 6N137 tốc độ cao giúp cách ly
tín hiệu điều khiển với board điều khiển, an toàn và chống nhiễu.
• Tích hợp tản nhiệt nhôm lớn giúp tản nhiệt cho TB6560.
• Thích hợp với động cơ bước 43, 57, 86 | 2 hoặc 4 pha | 4 dây hoặc 6 dây.
• Có công tắc để Setup dòng tải, tối đa 3A.
• Có công tắc để Setup vi bước 1:1, 1:2, 1:8, 1:16.
• Có công tắc để Setup Decay (lực giữ vị trí cố định).
• Sử dụng đơn giản, chỉ cần thiết lập thông số Motor, cấp
nguồn và cấp xung điều khiển
Mạch điều khiển động cơ bước TB6560 là loại thường
được sử dụng nhất hiện nay, mạch có thể điều khiển được
động cơ bước 2 pha (10 – 35VDC) với công suất tối đa 3A.
Mạch điều khiển động cơ bước TB6560 được sử dụng để
điều khiển động cơ bước, ứng dụng trong máy CNC hoặc
các hệ cơ khí chính xác. Hình 3.12 TB6560
Qua tìm hiểu về những thông tin kĩ thuật của từng loại mạch điều
khiển động cơ bước cũng như giá thành của chúng em quyết định sử dụng
DRV8825 cho đồ án kho tự động này do module đáp ứng được đầy đủ các yêu
cầu về kĩ thuật, giá thành thì rẻ hơn so với các module khác.
3.2 Lựa chọn bộ điều khiển 41 lOMoARcPSD| 36006477
3.2.1 Bộ điều khiển logic khả trình(PLC)
PLC là viết tắt của cụm Programmable Logic Controller, được gọi là
bộ điều khiển logic khả trình. Đây là thiết bị điều khiển lập trình được cho
phép thực hiện linh hoạt các thuật toán điều khiển logic thông qua một ngôn ngữ lập trình.
Ban đầu nó được phát triển để thay thế các relay, trình tự và bộ định
thời được sử dụng trong quá trình sản xuất của ngành công nghiệp tự động
hóa. Nhưng hiện tại nó đã được mở rộng quy mô và được sử dụng trong tất
cả các loại quy trình sản xuất bao gồm cả dây chuyền robot. Hiện nay không
có nhà máy nào không có máy móc hoặc thiết bị chạy trên PLC. Lý do chính
mà nó được sử dụng rộng rãi có thể bắt nguồn từ độ chắc chắn và khả năng
chịu được xử lý và môi trường liên quan đến sản xuất. PLC cũng một ví dụ
điển hình về hệ điều hành thời gian thực vì nó có khả năng tạo ra kết quả đầu
ra cho các đầu vào cụ thể trong một khung thời gian rất ngắn, đây là yêu cầu
quan trọng đối với các cơ sở công nghiệp vì sự chậm trễ có thể làm gián
đoạn toàn bộ hoạt động.
Hình 3.13 các bộ PLC - Kiến trúc:
Nói chung, PLC có thể được coi là một bộ vi điều khiển cấp
cao. Về cơ bản, nó được tạo thành từ một module bộ xử lý,
nguồn điện và các module I / O. Module bộ xử lý bao gồm bộ
xử lý trung tâm (CPU) và bộ nhớ. Ngoài ra đối với bộ vi xử lý, 42 lOMoAR cPSD| 36006477
CPU cũng chứa ít nhất một giao diện có thể được lập trình
(USB, Ethernet hoặc RS232) cùng với các mạng giao tiếp.
Nguồn điện thường là một module riêng biệt và các module I /
O tách biệt với bộ xử lý. Các module I / O bao gồm bộ phận
gián đoạn (bật / tắt), analog (biến thiên liên tục) và các module
đặc biệt như điều khiển chuyển động hoặc bộ đếm tốc độ cao.
Các thiết bị hiện trường được kết nối với các module I / O.
Tùy thuộc vào số lượng module I / Os mà PLC sở hữu, chúng
có thể nằm trong cùng một vỏ với PLC hoặc trong một vỏ
riêng biệt. Một số PLC nhỏ được gọi là PLC nano hay micro
thường có tất cả các bộ phận của chúng bao gồm nguồn, bộ xử lý, ... cùng một vỏ. - Giao diện:
PLC được thiết kế tiêu chuẩn để giao tiếp với các cảm biến, bộ
truyền động và module giao tiếp cấp công nghiệp và do đó
định mức dòng điện và điện áp thường không tương thích với
bộ vi điều khiển không có phần cứng bổ sung.
PLC thường sử dụng Ethernet và một số biến thể của dòng
RSserial như RS-232, RS-485 để giao tiếp. Sự ra đời của
internet công nghiệp ngày nay đang tạo ra sự gia tăng về số
lượng các thiết bị PLC được kết nối có khả năng truyền dữ liệu
qua các giao diện giao tiếp không dây.
Nó có nhiều kích cỡ khác nhau, từ các thiết bị nhỏ (với ít chân
IO / module) đến các PLC lớn, được gắn trên giá đỡ khổng lồ với hàng trăm IO.
- Hiệu suất và độ tin cậy:
PLC được thiết kế để sử dụng trong công nghiệp và do đó đã
được củng cố để có thể chịu được một số điều kiện bất lợi liên
quan đến môi trường như phạm vi nhiệt độ khắc nghiệt, nhiễu
điện, xử lý thô và độ rung cao. PLC cũng là một ví dụ điển
hình về hệ thống hoạt động theo thời gian thực do khả năng tạo
ra kết quả đầu ra trong thời gian ngắn nhất có thể sau khi đánh
giá đầu vào. Điều này rất quan trọng trong hệ thống công
nghiệp vì thời gian là một phần lớn của nhà máy và quy trình sản xuất. 43 lOMoAR cPSD| 36006477
- Mức kĩ năng yêu cầu:
Một trong những thuộc tính quan trọng của PLC ít đòi hỏi kiến
thức kỹ thuật để lập trình và vận hành. PLC được thiết kế để sử
dụng bởi cả các chuyên gia tự động hóa có tay nghề cao và kỹ
thuật viên nhà máy, những người ít hoặc không được đào tạo
chính quy. Nó tương đối dễ dàng khắc phục sự cố và chẩn
đoán lỗi. Các thiết bị PLC hiện đại thường đi kèm với một màn
hình hiển thị giúp giám sát mọi thứ dễ dàng hơn mà không cần các công cụ phức tạp. - Lập trình:
Vì mục đích đơn giản và dễ sử dụngc, PLC ban đầu được thiết
kế để lập trình bằng hình ảnh lập trình mô phỏng các kết nối
hoặc sơ đồ của sơ đồ logic relay. Nhờ đó không phải đào tạo
nhiều cho các kỹ thuật viên. Phần lớn ngôn ngữ lập trình phổ
biến được sử dụng cho PLC là ngôn ngữ lập trình Logic bậc
thang và ngôn ngữ lập trình danh sách lệnh. Logic bậc thang
sử dụng các ký hiệu, thay vì từ ngữ, để mô phỏng điều khiển
logic relay thế giới thực. Các ký hiệu này được kết nối với
nhau bằng các đường để cho biết dòng điện chạy qua relay,
như tiếp điểm và cuộn dây. Số lượng ký hiệu đã tăng lên rất
nhiều trong những năm qua cho phép các kỹ sư dễ dàng thực
hiện các chức năng cấp cao
Do sự phổ biến gần đây của các ngôn ngữ lập trình cấp cao
hiện đại, các PLC hiện đang được lập trình bằng các ngôn ngữ
như C, C ++ và basic nhưng tất cả các PLC nói chung vẫn tuân
thủ tiêu chuẩn hệ thống điều khiển IEC 61131/3 của ngành và
hỗ trợ các ngôn ngữ lập trình được quy định bởi tiêu chuẩn bao
gồm: sơ đồ bậc thang, văn bản có cấu trúc, sơ đồ khối chức
năng, danh sách lệnh vàlưu đồ tuần tự.
PLC ngày nay thường được lập trình thông qua phần mềm ứng
dụng dựa trên bất kỳ ngôn ngữ nào được đề cập ở trên, chạy
trên PC được kết nối với PLC bằng bất kỳ giao diện nào, USB,
Ethernet, RS232, RS-485, RS-422, ... - Ứng dụng:
PLC là phần tử điều khiển chính được sử dụng trong các hệ
thống điều khiển công nghiệp. Nó được ứng dụng trong điều
khiển máy công nghiệp, băng tải, robot và các máy móc dây
chuyền sản xuất khác. Nó cũng được sử dụng trong các hệ 44 lOMoARcPSD| 36006477
thống dựa trên SCADA và trong các hệ thống yêu cầu mức độ
tin cậy cao và khả năng chịu đựng các điều kiện khắc nghiệt.
PLC được sử dụng trong các ngành công nghiệp bao gồm:
• Hệ thống chiết rót chai liên tục
• Hệ thống trộn hàng loạt
• Hệ thống điều hòa tầng không khí
• Kiểm soát lưu lượng
3.2.2 Vi điều khiển
Vi điều khiển là một máy tính được tích hợp trên một con chip (single
chip microcomputer) được tạo ra qua VLSI. Vi điều khiển cũng được gọi là
bộ điều khiển nhúng bởi vì vi điều khiển và các mạch điện hỗ trợ được tích
hợp hoặc nhúng vào thiết bị mà nó kiểm soát. Vi điều khiển có nhiều bit
khác nhau giống như vi xử lý (cho đến nay thì có các loại vi điều khiển 4bit,
8bit, 16bit, 32bit, 64bit và 128 bit)
Hình 3.14 vi điều khiển AVR - Kiến trúc
• Vi điều khiển thường chứa các linh kiện sau:
• Bộ xử lý trung tâm (CPU)
• Bộ nhớ truy cập ngẫu nhiên (RAM)
• Bộ nhớ chỉ đọc (ROM)
• Cổng đầu vào / đầu ra
• Bộ đếm thời gian và bộ đếm
• Bộ chuyển đổi analog sang digital
• Bộ chuyển đổi digital sang analog
• Cổng giao tiếp nối tiếp • Mạch dao động
Bên trong vi điều khiển chứa đầy đủ tất cả các tính năng cần
thiết cho một hệ thống máy tính và các chức năng như một 45 lOMoARcPSD| 36006477
máy tính mà không cần thêm các bộ phận kỹ thuật số bên ngoài.
Hình 3.15 Cấu trúc mạch vi điều khiển - Giao diện
Bộ vi điều khiển cũng có các cảm biến, bộ truyền động và
module được thiết kế để đáp ứng các nhu cầu cụ thể mà có thể
khó giao tiếp với PLC. Tuy nhiên, nó thường được thiết kế để
xử lý chỉ vài 100 IO. Một số kỹ thuật có thể tăng IO của vi điều khiển
- Hiệu suất và độ tin cậy
Vi điều khiển có bề ngoài nhỏ bé và thường được kết hợp với
một số thiết bị khác để tạo thành hệ thống nhúng. Vi điều
khiển ngày này có khả năng xử lí rất nhanh và chính xác trong
phạm vi điều khiển của chúng.
- Mức kĩ năng yêu cầu:
Vi điều khiển đòi hỏi phải xử lý khéo léo. Người thiết kế cần
có kiến thức tốt về các nguyên tắc kỹ thuật điện và lập trình để
có thể thiết kế các mạch bổ sung cho vi điều khiển. Vi điều
khiển cũng yêu cầu các công cụ đặc biệt (ví dụ: Máy hiện
sóng) để chẩn đoán lỗi và sự cố firmware. Hiện nay với sự
bùng nổ của Internet of things(IOT) thì vi điều khiển ngày
càng phổ biến và tiếp cận với mọi người nhiều hơn. Nhưng vi 46 lOMoARcPSD| 36006477
điều khiển vẫn đòi hỏi nhiều ki năng và hiểu biết để sử dụng
chúng một cách tốt nhất. - Lập trình:
Vi điều khiển được lập trình bằng các ngôn ngữ cấp thấp như
assembly hoặc các ngôn ngữ cấp cao như C và C ++ cùng
những ngôn ngữ khác. Nó thường đòi hỏi kinh nghiệm cao về
ngôn ngữ lập trình được sử dụng và hiểu biết chung về các
nguyên tắc của firmware. Các lập trình viên cần hiểu các khái
niệm về cấu trúc dữ liệu và hiểu biết sâu về kiến trúc vi điều
khiển để phát triển phần mềm cho dự án.
Bộ vi điều khiển cũng thường được lập trình thông qua phần
mềm ứng dụng chạy trên PC và chúng thường được kết nối với
PC thông qua một phần cứng bổ sung thường được gọi là bộ lập trình. - Ứng dụng:
Vi điều khiển thường được sử dụng trong các thiết bị điều
khiển tự động bao gồm các công cụ điện, đồ chơi, thiết bị y tế
cấy dưới da, máy móc văn phòng, hệ thống điều khiển động
cơ, thiết bị, điều khiển từ xa và hàng loạt các hệ thống nhúng khác.
Qua những phân tích trên về 2 bộ điều khiển rất phổ biến hiện này,
với qui mô cũng như tính nhỏ gọn của đồ án nên em sử dụng bộ
điều khiển sử dụng vi điều khiển vì những đặc điểm của vi điều
khiển có thể đáp ứng cho mô hình của đồ án hơn nữa giá thành
của vi điều khiển rẻ hơn rất nhiều so với PLC.
3.2.3 Sơ đồ kết nối các khối trong mạch điều khiển
Mạch điện của hệ thống điều khiển bao gồm các khối sau: •
Khối nguồn cho vi điều khiển •
LCD và nút bấm điều khiển •
Khối Driver điều khiển động cơ Các
cảm biến vị trí và khoảng cách - Khối nguồn: 47 lOMoARcPSD| 36006477
Hình 3.16 Sơ đồ kết nối khối nguồn
Khối nguồn là nguồn cấp điện áp cho cả mạch. Với nguồn vào
vi điều khiển là 5V nên ta sử dụng LM2596 để giảm áp và cấp điện áp nuôi cho vi điều khiển
- Khối Driver điều khiển động cơ
Ba động cơ bước ở ba trục của cánh tay robot được điều khiển
bởi ba driver riêng biệt. Để dễ dàng kết nối với các động cơ
nên trên mạch điều khiển đã dẫn các chân của driver điều khiển vào header 4. 48 lOMoARcPSD| 36006477
Hình 3.17 Sơ đồ kết nối các driver với động cơ
- LCD và nút bấm điều khiển
LCD được kết nối với module I2C để giao tiếp và kết nối với
arduino được dễ dàng hơn. Module I2C sẽ kết nối vào header4
và dẫn về các chân của vi điều khiển.
Hình 3.18 Sơ đồ kết nối LCD
Hình 3.19 Sơ đồ các nút bấm
- Các cảm biến vị trí và khoảng cách 49 lOMoARcPSD| 36006477
Hình 3.20 Vị trí kết nối với các cảm biến tọa độ
Hình 3.21 Vị trí kết nối với cảm biến khoảng cách
Các cảm biến được gắn trên khung kho hàng cũng như cánh
tay cơ khí nên em sử dụng các header được nối với chân của vi
điều khiển rồi sử dụng dây dẫn tới các cảm biến để cho bộ điều
khiển được tối giản cũng như thẩm mĩ nhất.
- Khối vi điều khiển 50 lOMoARcPSD| 36006477
Hình 3.22 Sơ đồ nối chân của arduino
Vi điều khiển được sử dụng ở đây là ATMEGA326P được tích
hợp trong arduino nana để điều khiển các khối trong bộ điều khiển. 51 lOMoARcPSD| 36006477
Hình 3.23 Mạch nguyên lý của bộ điều khiển
Hình 3.24 Mạch PCB của bộ điều khiển CHƯƠNG 4
LẬP TRÌNH ĐIỀU KHIỂN VÀ HOÀN THÀNH
MÔ HÌNH KHO HÀNG TỰ ĐỘNG 4.1 Arduino nano
4.1.1 Giới thiệu về Arduino
- Arduino là một board mạch vi điều khiển được phát triển bởi
Arduino.cc, một nền tảng điện tử mã nguồn mở chủ yếu dựa trên vi điều
khiển AVR Atmega. Với Arduino chúng ta có thể xây dựng các ứng dụng
điện tử tương tác với nhau thông qua phần mềm và phần cứng hỗ trợ. 52 lOMoARcPSD| 36006477
Hình 4.1 Vi điều khiển Atmega328P -
Khi arduino chưa ra đời, để làm được một dự án điện tử nhỏ
liên quan đến lập trình, biên dịch, chúng ta cần đến sự hỗ trợ của các thiết bị
biên dịch khác để hỗ trợ. Ví dụ như, dùng Vi điều khiển PIC hoặc IC vi điều
khiển họ 8051..., chúng ta phải thiết kế chân nạp onboard, hoặc mua các thiết
bị hỗ trợ nạp và biên dịch như mạch nạp 8051, mạch nạp PIC... -
Hiện nay Arduino được biết đến ở Việt Nam rất rộng rãi. Từ
học sinh trung học, đến sinh viên và người đi làm. Những dự án nhỏ và lớn
được thực hiện một cách rất nhanh, các mã nguồn mở được chia sẻ nhiều
trên diễn dàn trong nước và nước ngoài. Giúp ích rất nhiều cho những bạn
theo đam mê nghiên cứu chế tạo những sản phẩm có ích cho xã hội. -
Trong những năm qua, Arduino là bộ não cho hàng ngàn dự án
điện tử lớn nhỏ, từ những sản phẩm ra đời ứng dụng đơn giản trong cuộc
sống đến những dự án khoa học phức tạp.
Cứ như vậy, thư viện mã nguồn mở ngày một tăng lên, giúp ích cho
rất nhiều người mới biết đến Arduino cũng như những chuyên viên lập trình
nhúng và chuyên gia cùng tham khảo và xây dựng tiếp nối.... -
Bạn muốn thiết kế điều khiển thiết bị thông qua cảm biến ánh
sáng, Đo nồng độ hóa chất, khí ga và xử lý thông qua cảm biến nồng độ và
cảm biến khí, Bạn muốn làm 1 con robot mini, Bạn muốn quản lý tắt mở
thiết bị điện trong nhà, bạn muốn điều khiển motor, nhận dạng ID, Khó hơn
xíu là bạn muốn làm một máy CNC hoặc máy in 3D mini, máy bay không
người lái ( Flycam) một hệ thống thu thập dữ liệu thông qua GSM, xử lý
ảnh,điều khiển vạn vật thông qua internet giao tiếp với điện thoại thông minh... -
Để làm được điều đó, từ đơn giản đến phức tạp bạn cần sử
dụng ngôn ngữ lập trình Arduino dựa trên sơ đồ, hệ thống của bạn thiết kế, 53 lOMoARcPSD| 36006477
thông qua phần mềm Arduino IDE, để thực hiện những yêu cầu đó đưa về bộ
phận xử lý trung tâm ( Arduino). -
Hiện nay trên thị trường có rất nhiều phiên bản Arduino như
ArduinoUno R3, Arduino Uno R3 CH340, Arduino Mega2560, Arduino
Nano, Arduino Pro Mino, Arduino Lenadro, Arduino Industrial.... Hình 4.2 Arduino UNO
- Các tính năng Arduino trên Board
• Arduino Uno đi kèm với giao diện USB tức là cổng USB được
thêm vào bo mạch Arduino để phát triển giao tiếp nối tiếp với máy tính.
• Bộ vi điều khiển Atmega328 sử dụng trên bo mạch đi kèm
vớimột số tính năng như hẹn giờ, bộ đếm, ngắt, chân PWM,
CPU, chân I / O và dựa trên xung nhịp 16 MHz giúp tạo ra
nhiều tần số và số lệnh hơn trong mỗi chu kỳ.
• Đây là một nền tảng mã nguồn mở, nơi mọi người có thể sửa
đổi và tối ưu hóa bảng dựa trên số lượng hướng dẫn và nhiệm vụ muốn đạt được.
• Arduino đi kèm với một tính năng điều chỉnh tích hợp giúp
giữ điện áp trong tầm kiểm soát khi thiết bị được kết nối với thiết bị bên ngoài.
• Chân reset trên Arduino để thiết lập lại toàn bộ và đưa chương
trình đang chạy trở về ban đầu. Chân reset này hữu ích khi
Arduino bị treo khi đang chạy chương trình 54 lOMoAR cPSD| 36006477
• Có 14 chân I / O digital và 6 chân analog được tích hợp trên
Arduino cho phép kết nối bên ngoài với bất kỳ mạch nào với
Arduino. Các chân này cung cấp sự linh hoạt và dễ sử dụng
cho các thiết bị bên ngoài có thể được kết nối thông qua các chân này.
• 6 chân analog được đánh dấu là A0 đến A5 và có độ phân giải
10 bit. Các chân này đo từ 0 đến 5V, tuy nhiên, chúng có thể
được cấu hình ở phạm vi cao bằng cách sử dụng chức năng
analogReference () và chân ISF.
• Bộ nhớ flash 13KB được sử dụng để lưu trữ số lượng hướng dẫn dưới dạng mã.
• Chỉ cần nguồn 5V để sử dụng với Arduino, hoặc lấy nguồn
trực tiếp từ cổng USB. Arduino có thể hỗ trợ nguồn điện bên
ngoài lên đến 12 V có thể được điều chỉnh và giới hạn ở mức
5 V hoặc 3,3 V dựa trên yêu cầu của projects. 4.1.2 Arduino nano
Arduino Nano là một bảng vi điều khiển thân thiện, nhỏ gọn, đầy đủ.
Arduino Nano nặng khoảng 7g với kích thước từ 1,8cm - 4,5cm. Bài viết này
trình bày về các thông số kỹ thuật quan trọng, nhất là sơ đồ chân và chức
năng của mỗi chân trong bảng Arduino Nano.
Arduino Nano USB Mini là board mạch sử dụng vi điều khiển
ATmega328P hoặc ATmega168 tích hợp các chân I/O đơn giản nhỏ gọn dựa
trên mã nguồn mở được phát triển bởi Arduino.cc, có lợi thế lớn về kích
thước so với phiên bản Arduino Uno và Arduino Mega. Arduino Nano có thể
hoạt động độc lập và tương tác hiệu quả với các thiết bị điện tử, cũng có thể
giúp những người mới tìm hiểu về Arduino có thể kết nối với PC, phối hợp
với Flash, Xử lý, Max / Msp, PD, và các phần mềm khác một cách dễ dàng.
Điều này giúp Arduino Nano là sự lựa chọn ưa thích khi muốn thực hiện một
projects mà yếu cầu kết nối với các thiết bị ngoại vi ít và đơn giản.
Các chức năng rất giống giống với phiên bản Arduino Uno nhưng
kích thước nhỏ gọn hơn. Arduino Nano hoạt động với điện áp 5V. Tuy nhiên
nguồn cấp điện áp đầu vào có thể thay đổi từ 7 đến 12V. Arduino Nano bo
gồm tất cả 14 chân Digital, 8 chân Analog, 2 chân Reset và 6 chân Nguồn.
Mỗi chân Digital và Analog có thể thực hiện với nhiều chức năng khác nhau
nhưng chức năng chính vẫn là được mặc định cấu hình làm đầu vào (Input) 55 lOMoARcPSD| 36006477
hoặc đầu ra ( Output). Khi giao tiếp với cảm biến các chân Digital / Analog
đóng vai trò chân Input, Và khi sử dụng để điều khiển động cơ, tạo xung,
kích dẫn relay, thiết bị chuyển mạch thì các chân Digital / Anologs đống vai trò Output.
Các hàm cơ bản như pinMode() và digitalWrite() được sử dụng để
điều khiển hoạt động của các chân Digital trong khi analogRead() được sử
dụng để điều khiển các chân Analog. Các chân Analog có độ phân giải 10
bit, giá trị thay đổi từ 0V đến 5V.
Arduino Nano tích hợp Thạch anh dao động với tần số 16 MHz. Nếu
sử dụng Arduino Nano để thực hiện một projects liên quan đến đồng hồ số
thì độ chính xác trong dao động tần số rất cao
Có một hạn chế khi sử dụng Arduino Nano đó là không đi kèm giắc
nguồn DC, có nghĩa là không thể cung cấp nguồn điện bên ngoài thông qua
các chân Arduino Nano như các phiên bản Arduino Uno và Arduino Mega.
Phải cắm trực tiếp thông qua cổng USB Mini
Board mạch Arduino Nano không sử dụng cổng USB chuẩn thường
dùng để kết nối với máy tính, thay vào đó Arduino Nano chỉ hỗ trở cổng
USB Mini để kết nối. Với Kích thước nhỏ gọn và các tính năng giống với
phiên bản Arduino Uno nên Arduino Nano trở thành một lựa chọn lý tưởng
cho hầu hết các ứng dụng thực hiện các projects trong đó kích thước của các
thành phần điện tử được tối ưu.
Bộ nhớ flash là 16KB hoặc 32KB, phụ thuộc vào Vi điều khiển
Atmega, tức là Atmega168 đi có bộ nhớ flash 16KB trong khi Atmega328 đi
có bộ nhớ flash là 32KB. Bộ nhớ flash được sử dụng để lưu trữ mã hóa dữ
liệu. Bộ nhớ 2KB trong tổng số bộ nhớ flash được sử dụng cho chương trình
khởi động gọi là Bootloader. Bộ nhớ SRAM có thể thay đổi từ 1KB hoặc
2KB và EEPROM tương ứng là 512 byte hoặc 1KB đối với Atmega168 và Atmega328.
Sử dụng phần mềm IDE để lập trình với cáp USB Mini giao tiếp với máy tính 56 lOMoARcPSD| 36006477
Hình 4.3 Arduino nano và cáp nối
Sơ đồ chân và thông số kỹ thuật Arduino Nano sử dụng Vi điều khiển ATmega328P: • Chip: ATmega328P • Điện áp logic: 5V
• Điện áp hoạt động: 7-12V
• Các chân I/O: 14 chân (Bao gồm 6 chân PWM) • Dòng diện I/O: 40mA • Bộ nhớ Flash: 32Kb • SRAM: 2Kb • EEPROM: 1Kb
• Tần số dao động : 16Mhz 57 lOMoARcPSD| 36006477
Hình 4.1 Sơ đồ các chân của arduino nano
Mỗi chân trên mạch Arduino Nano có chức năng cụ thể trên các chân
đó. Chẳng hạn như các chân Analog có thể sử dụng như một bộ chuyển đổi
Analog sang Digital trong đó các chân A4 và A5 cũng có thể được sử dụng
cho vấn đề giao tiếp I2C. Tương tự, có 14 chân Digital, trong đó có 6 chân
được sử dụng để tạo ra xung PWM.
• Chân Vin: Đây là chân cung cấp điện áp đầu vào cho mạch
Arduino nano khi sử dụng nguồn ngoài từ 7VDC đến 12 VDC.
• Chân 5V: Là mức điện áp cung cấp quy định của Arduino
được sử dụng để cấp nguồn nuôi cho vi điều khiển và các bộ
phận linh kiện khác trên board Arduino.
• Chân 3,3V: Đây là một mức điện áp tối thiểu được tạo ra bởi
bộ điều chỉnh điện áp trên board ( sử dụng Lm1117 - 3.3V)
• Chân GND: Chân mass cho Arduino, có nhiều chân GND trên
board Arduino cho mục đích dễ dàng kết nối với thiết bị ngoại vi sử dụng dây testboard
• Chân Reset: Khi tác động nút nhấn reset, Arduino được trả về
lại chương trình ban đầu. Rất hữu ích khi chạy chương trình
phức tạp và bị treo Vi điều khiển ATmega. Mức tích cực LOW
được thiết lập sẽ reset lại Arduino Nano 58 lOMoAR cPSD| 36006477
• Các chân Analogs: Có 8 chân Analog trên board mạch Arduino
Nano được ký hiệu là A0 đến A7. Được sử dụng để đo điện áp
tương tự trong khoảng từ 0V đến 5V.
• Chân Rx, Tx: Được sử dụng cho giao tiếp nối tiếp trong đó Tx
là truyền dữ liệu và Rx là nhận dữ liệu.
• Chân 13: Để thực hiện bật tắt LED trên board Arduino Nano,
sử dụng để quan sát, kiểm tra chương trình cần thiết
• Chân AREF: Chân này được sử dụng lấy điện áp tham chiếu cho điện áp đầu vào.
• Chân xung PWM: Bao gồm 6 chân là chân 3,5,6,9,10,11 được
sử dụng để cung cấp đầu ra 8-bit xung PWM.
• Giao tiếp SPI: Chân 10(SS), Chân 11(MOSI), Chân 12(MISO),
Chân 13(SCK) được sử dụng cho SPI Giao diện ngoại vi nối
tiếp. SPI được sử dụng chủ yếu để truyền dữ liệu giữa các bộ
vi điều khiển và các thiết bị ngoại vi khác như cảm biến, thanh ghi và thẻ nhớ SD.
• Ngắt ngoài (External Interrupts ) : Chân 2 và 3 sử dụng làm
ngắt ngoài được thiết lập trong trường hợp khẩn cấp khi chúng
ta cần dừng chương trình chính và tác động các cảnh báo
hướng dẫn tại thời điểm đó. Chương trình chính sẽ tiếp tục lại
sau khi lệnh ngắt được loại bỏ.
• Giao tiếp I2C: Giao tiếp I2C sử dụng các chân A4 (SDA) và A5 (SCL)
4.2 Lập trình điều khiển
4.2.1 Phần mềm lập trình
Arduino IDE là một phần mềm mã nguồn mở chủ yếu được sử dụng
để viết và biên dịch mã vào module Arduino.
Đây là một phần mềm Arduino chính thức, giúp cho việc biên dịch
mã trở nên dễ dàng mà ngay cả một người bình thường không có kiến thức
kỹ thuật cũng có thể làm được.
Nó có các phiên bản cho các hệ điều hành như MAC, Windows,
Linux và chạy trên nền tảng Java đi kèm với các chức năng và lệnh có sẵn
đóng vai trò quan trọng để gỡ lỗi, chỉnh sửa và biên dịch mã trong môi trường. 59 lOMoARcPSD| 36006477
Có rất nhiều các module Arduino như Arduino Uno, Arduino Mega,
Arduino Leonardo, Arduino Micro và nhiều module khác. Mỗi module chứa
một bộ vi điều khiển trên bo mạch được lập trình và chấp nhận thông tin dưới dạng mã.
Mã chính, còn được gọi là sketch, được tạo trên nền tảng IDE sẽ tạo
ra một file Hex, sau đó được chuyển và tải lên trong bộ điều khiển trên bo.
Môi trường IDE chủ yếu chứa hai phần cơ bản: Trình chỉnh sửa và Trình
biên dịch, phần đầu sử dụng để viết mã được yêu cầu và phần sau được sử
dụng để biên dịch và tải mã lên module Arduino.
Môi trường này hỗ trợ cả ngôn ngữ C và C ++.
Khi người dùng viết mã và biên dịch, IDE sẽ tạo file Hex cho mã. File
Hex là các file thập phân Hexa được Arduino hiểu và sau đó được gửi đến
bo mạch bằng cáp USB. Mỗi bo Arduino đều được tích hợp một bộ vi điều
khiển, bộ vi điều khiển sẽ nhận file hex và chạy theo mã được viết.
Arduino IDE bao gồm các phần khác nhau: 1. Window bar 2. Menu bar 3. Phím tắt 4. Text Editor 5. Output Panel
Hình 4.4 Giao diện Arduino IDE - Window bar 60 lOMoARcPSD| 36006477
Thanh cửa sổ bao gồm tên của File và phiên bản phần mềm Arduino IDE - Menu bar: Thanh menu bao gồm: File Hình 4.5 mục file Edit Hình 4.6 Mục edit Sketch 61 lOMoARcPSD| 36006477 Hình 4.7 Mục Sketch Tools Hình 4.8 Mục Tools Help 62 lOMoARcPSD| 36006477 Hình 4.9 Mục help - Output panel:
Bảng đầu ra này được sử dụng để đưa ra nhận xét về mã
• Nếu mã được biên dịch thành công hoặc bất kỳ lỗi nào xảy ra.
• Nếu mã đã được tải lên bo thành công.
Bo đã chiếm bao nhiêu không gian.
Hình 4.10 output panel
4.2.2 Lưu đồ, thuật toán điều khiển 63 lOMoARcPSD| 36006477 64 lOMoARcPSD| 36006477
Hình 4.11 Lưu đồ thuật toán cất và trả hàng 1 65 lOMoARcPSD| 36006477
Hình 4.12 Lưu đồ thuật toán cất và trả hàng 2
4.3 Hoàn thiện mô hình kho hàng tự động
Hình 4.13 Mạt sau mạch bộ điều khiển 66 lOMoARcPSD| 36006477
Hình 4.13 Mặt trước bộ điều khiển
Hình 4.15 Mô hình hoàn thiện KẾT LUẬN:
Qua việc ứng dụng các kiến thức đã học cũng như sự tìm tòi học hỏi trong
suốt thời gian qua em đã hoàn thành được đồ án của mình. Mặc dù vẫn còn nhiều
thiếu sót nhưng đồ án cũng cơ bản đáp ứng được các yêu cầu đề ra ban đầu:
- Tìm hiểu về mô hình kho hàng tự động
- Thiết kế và gia công khung kho hàng và cánh tay robot
- Thiết kế và lựa chọn bộ điều khiển phù hợp
- Tìm hiểu và ứng dụng arduino vào bộ điều khiển 67 lOMoARcPSD| 36006477
Mô hình đồ án kho hàng tự động cơ bản đáp ứng được các chức năng nhập
hàng và xuất hàng ra vào kho theo số lượng xác định. Đảm bảo việc nhập xuất kho
một cách tự động, ổn định và chính xác.
Sau quá trình thực hiện đề tài em cũng cải thiện và trau dồi thêm các kiến
thức cũng như kinh nghiệm thực tế cho mình. Tuy nhiên, do năng lực của bản thân
cũng như điều kiện thời gian có hạn nên đồ án vẫn còn một số hạn chế. Để hoàn
thiện và phát triển mở rộng hơn đề tài này, em rất mong nhận được sự nhận xét và
góp ý thêm của các thầy cô.
Em xin chân thành cảm ơn! 68 lOMoARcPSD| 36006477 TÀI LIỆU THAM KHẢO
[ Koxtenko, Piottrovski.Máy điện 1. BM Kỹ thuật điện dịch. NXB Giáo dục. 1 Hà Nội. 1958. ]
[ Nguyễn Trọng Hiệp, Chi tiết máy Tập 1, Nhà xuất bản Giáo Dục. Hà Nội. 2 1994. ]
[ Nguyễn Trọng Hiệp, Chi tiết máy Tập 2, Nhà xuất bản Giáo Dục. Hà Nội. 3 1994. ]
[ Nguyễn Trọng, Cơ học tý thuyết Tập 1, Nhà xuất bản Khoa Học và Kĩ 4 Thuật. Hà Nội. 2006; ]
[ Bùi Quốc Khánh, Nguyễn Văn Liễn, Cơ sở truyền động điện, 5
Nhà xuất bản khoa học và kỹ thuật, 2006. ]
[ Võ Minh Chính, Phạm Quốc Hải, Trần Trọng Minh, Điện tử công suất, 6
Nhà xuất bản khoa học và kỹ thuật, 2005. ] 69 lOMoAR cPSD| 36006477 1. PHỤ LỤC A1. Source code
#define runEvery(t) for (static long _lasttime;(uint16_t)
((uint16_t)millis() - _lasttime) >= (t);_lasttime += (t)) // Thư viện #include #include
LiquidCrystal_I2C lcd(0x27, 16, 2); // Khai báo các chân // Step 1 2 3 #define dir1 2 #define step1 3 #define dir2 4 #define step2 5 #define dir3 6 #define step3 7 // Nút ấn #define layhang A2 #define caphang A3 #define bientro A0 #define batdau A6 // Cảm biến #define dtss 11 #define ssx 8 #define ssy 9 #define ssz 10 void setup() { lcd.init(); lcd.backlight(); lcd.setCursor(4,0); lcd.print("KHO HANG"); lcd.setCursor(4,1); lcd.print("TU DONG"); 70 lOMoAR cPSD| 36006477 pinMode(step1, OUTPUT); pinMode(dir1, OUTPUT); pinMode(step2, OUTPUT); pinMode(dir2, OUTPUT); pinMode(step3, OUTPUT); pinMode(dir3, OUTPUT); pinMode(layhang, INPUT); pinMode(caphang, INPUT); pinMode(bientro, INPUT); pinMode(batdau, INPUT); pinMode(dtss, INPUT); pinMode(ssx, INPUT); pinMode(ssy, INPUT); pinMode(ssz, INPUT); } void len2() { digitalWrite(dir2, HIGH);
for (int i = 0; i <= 80; i++) { digitalWrite(step2, HIGH); delayMicroseconds(500); digitalWrite(step2, LOW); delayMicroseconds(1500); } } void xuong2() { digitalWrite(dir2, LOW);
for (int i = 0; i <= 80; i++) { digitalWrite(step2, HIGH); delayMicroseconds(500); 71 lOMoAR cPSD| 36006477 digitalWrite(step2, LOW); delayMicroseconds(1500); } } void pick() { // Đưa vào digitalWrite(dir3, HIGH);
for (int i = 0; i <= 500 ; i++) { digitalWrite(step3, HIGH); delayMicroseconds(500); digitalWrite(step3, LOW); delayMicroseconds(1500); }
// Nâng lên len2(); // Đưa ra digitalWrite(dir3, LOW); for (int i = 0; i <= 500; i++) { digitalWrite(step3, HIGH); delayMicroseconds(500); digitalWrite(step3, LOW); delayMicroseconds(1500); } } void place() { // Đưa vào digitalWrite(dir3, HIGH);
for (int i = 0; i <= 450; i++) { digitalWrite(step3, HIGH); delayMicroseconds(500); 72 lOMoAR cPSD| 36006477 digitalWrite(step3, LOW); delayMicroseconds(1500); } // Hạ xuống xuong2(); // Đưa ra digitalWrite(dir3, LOW); for (int i = 0; i <= 450; i++) { digitalWrite(step3, HIGH); delayMicroseconds(500); digitalWrite(step3, LOW); delayMicroseconds(1500); } }
void Cap_Line1(int var1) // Hàm cấp Hàng 1 { pick(); delay(500);
digitalWrite(dir1, HIGH); for (int
i = 0; i <= 750*var1 ; i++) { digitalWrite(step1, HIGH); delayMicroseconds(500); digitalWrite(step1, LOW); delayMicroseconds(1500); } delay(500); place(); delay(500); digitalWrite(dir1, LOW); for
(int i = 0; i <= 750*var1; i++) { digitalWrite(step1, HIGH); delayMicroseconds(500); digitalWrite(step1, LOW); delayMicroseconds(1500); 73 lOMoAR cPSD| 36006477 } delay(500); }
void Cap_Line2(int var2) // Hàm cấp hàng 2 { pick(); delay(500); digitalWrite(dir1, HIGH); digitalWrite(dir2, HIGH);
for (int i = 0; i <= (800 + 750*(var2-1)); i++) { digitalWrite(step1, HIGH); if (i <= 500) { digitalWrite(step2, HIGH); } delayMicroseconds(500); digitalWrite(step1, LOW); digitalWrite(step2, LOW); delayMicroseconds(1500); } delay(500); place(); delay(500); digitalWrite(dir1, LOW); digitalWrite(dir2, LOW);
for (int i = 0; i <= (800 + 750*(var2-1)); i++) { digitalWrite(step1, HIGH); if (i <= 500) { digitalWrite(step2, HIGH); } delayMicroseconds(500); digitalWrite(step1, LOW); digitalWrite(step2, LOW); delayMicroseconds(1500); } delay(500); }
void Lay_Line1(int var4) // Hàm xuất hàng 1 74 lOMoAR cPSD| 36006477
{ digitalWrite(dir1, HIGH); for
(int i = 0; i <= 750*var4; i++) { digitalWrite(step1, HIGH); delayMicroseconds(500); digitalWrite(step1, LOW); delayMicroseconds(1500); } delay(500); pick(); delay(500); digitalWrite(dir1, LOW); for
(int i = 0; i <= 750*var4; i++) { digitalWrite(step1, HIGH); delayMicroseconds(500); digitalWrite(step1, LOW); delayMicroseconds(1500); } delay(500); place(); delay(500); }
void Lay_Line2(int var5) //Hàm xuất hàng 2 { digitalWrite(dir1, HIGH); digitalWrite(dir2, HIGH);
for (int i = 0; i <= (800 + 750*(var5-1)); i++) { digitalWrite(step1, HIGH); if (i <= 480) { digitalWrite(step2, HIGH); } delayMicroseconds(500); digitalWrite(step1, LOW); digitalWrite(step2, LOW); delayMicroseconds(1500); 75 lOMoAR cPSD| 36006477 } delay(500); pick(); delay(500); digitalWrite(dir1, LOW); digitalWrite(dir2, LOW);
for (int i = 0; i <= (800 + 750*(var5-1)); i++) { digitalWrite(step1, HIGH); if (i <= 480) { digitalWrite(step2, HIGH); } delayMicroseconds(500); digitalWrite(step1, LOW); digitalWrite(step2, LOW); delayMicroseconds(1500); } delay(500); place(); delay(500); }
void Nhap_hang(int bt) // Nhập hàng theo giá trị biến trở { int cbdt; int sp = 0; while(sp < bt) { cbdt = digitalRead(dtss);
if (cbdt == 0 && sp == 0) { delay(500); Cap_Line1(1); sp+=1; }
else if(cbdt == 0 && sp == 1) 76 lOMoAR cPSD| 36006477 { delay(500); Cap_Line1(2); sp+=1; }
else if (cbdt == 0 && sp == 2) { delay(500); Cap_Line1(3); sp+=1; }
else if (cbdt == 0 && sp == 3) { delay(500); Cap_Line2(1); sp+=1; }
else if (cbdt == 0 && sp == 4) { delay(500); Cap_Line2(2); sp+=1; }
else if (cbdt == 0 && sp == 5) { delay(500); Cap_Line2(3); sp+=1; } } }
void Xuat_hang(int bt) // Xuất hàng theo giá trị biến trở { int cbdt; int sp = 0; while(sp < bt) 77 lOMoAR cPSD| 36006477 { cbdt = digitalRead(dtss); if (cbdt == 1 && sp == 0) { delay(500); Lay_Line1(1); sp+=1; }
else if (cbdt == 1 && sp == 1) { delay(500); Lay_Line1(2); sp+=1; }
else if (cbdt == 1 && sp == 2) { delay(500); Lay_Line1(3); sp+=1; }
else if (cbdt == 1 && sp == 3) { delay(500); Lay_Line2(1); sp+=1; }
else if (cbdt == 1 && sp == 4) { delay(500); Lay_Line2(2); sp+=1; }
else if (cbdt == 1 && sp == 5) { delay(500); Lay_Line2(3); sp+=1; 78 lOMoAR cPSD| 36006477 } } digitalWrite(dir1,
HIGH); for (int i = 0; i <= 200; i++) { digitalWrite(step1, HIGH); delayMicroseconds(500); digitalWrite(step1, LOW); delayMicroseconds(1500); } }
// Hàm xét về vị trí gốc void Goc() { int gt_ssx; int gt_ssy; int gt_ssz; //Truc z
for(int testz=0; testz <=60; testz++) { gt_ssz = digitalRead(ssz); if(gt_ssz == 1) { testz=60; continue; } digitalWrite(dir3, LOW);
for (int i = 0; i <= 10; i++) { digitalWrite(step3, HIGH); delayMicroseconds(500); digitalWrite(step3, LOW); delayMicroseconds(1500); } 79 lOMoAR cPSD| 36006477 } //Truc x
for(int testx=0; testx <=240; testx++) { gt_ssx = digitalRead(ssx); if(gt_ssx == 1) { testx=240; continue; } digitalWrite(dir1, LOW);
for (int i = 0; i <= 10; i++) { digitalWrite(step1, HIGH); delayMicroseconds(500); digitalWrite(step1, LOW); delayMicroseconds(1500); } } //Truc y
for(int testy=0; testy <=80; testy++) { gt_ssy = digitalRead(ssy); if(gt_ssy == 1) { testy=80; continue; } digitalWrite(dir2, LOW);
for (int i = 0; i <= 10; i++) { digitalWrite(step2, HIGH); delayMicroseconds(500); 80 lOMoAR cPSD| 36006477 digitalWrite(step2, LOW); delayMicroseconds(1500); } } delay(200); digitalWrite(dir2, HIGH); digitalWrite(dir1, LOW);
for (int i = 0; i <= 50; i++) { digitalWrite(step2, HIGH); if(i<=40) { digitalWrite(step1, HIGH); } delayMicroseconds(500); digitalWrite(step2, LOW); digitalWrite(step1, LOW); delayMicroseconds(1500); } } int gtbt, gtbt_so; int dem_lh = 0; int dem_ch = 0; int dem_bd = 0;
// Xét trạng thái các nút bấm int nutbam_bd() { int hientai = 0; hientai = analogRead(batdau); if(hientai > 800) { return 1; } else { return 0; } 81 lOMoAR cPSD| 36006477 } int nutbam_lh() { int hientai = 0; hientai = analogRead(layhang); if(hientai > 800) { return 1; } else { return 0; } } int nutbam_ch() { int hientai = 0; hientai = analogRead(caphang); if(hientai > 800) { return 1; } else { return 0; } } int solan = 1; void loop() { runEvery(50) { if(nutbam_ch() == 0) { dem_ch = 1; lcd.clear();
lcd.setCursor(1,0); lcd.print("Nhap Hang: ");
lcd.setCursor(14,0); lcd.print(gtbt_so); } if(dem_ch == 0) { 82 lOMoAR cPSD| 36006477 gtbt = analogRead(bientro);
gtbt_so = map(gtbt, 0, 1023, 0, 7); if(gtbt_so > 0)
{ lcd.clear(); lcd.setCursor(2,0);
lcd.print("So Luong:"); lcd.setCursor(8,1); lcd.print(gtbt_so); delay(1); } } } if(dem_ch == 1) { if(nutbam_bd() == 0)
{ lcd.clear(); lcd.setCursor(1,0); lcd.print("Nhap Hang: ");
lcd.setCursor(14,0); lcd.print(gtbt_so);
lcd.setCursor(4,1); lcd.print("Dang Nhap"); Goc(); delay(500);
Nhap_hang(gtbt_so); lcd.clear();
lcd.setCursor(1,0); lcd.print("Nhap Hang: ");
lcd.setCursor(14,0); lcd.print(gtbt_so);
lcd.setCursor(4,1); lcd.print("Nhap Xong"); dem_ch = 2; delay(500); } }
if (dem_ch == 2 && nutbam_lh() == 0) { dem_lh = 1; if(dem_lh == 1)
{ lcd.clear(); lcd.setCursor(1,0); lcd.print("Xuat Hang: ");
lcd.setCursor(14,0); lcd.print(gtbt_so); dem_lh = 2; } }
if(dem_lh == 2 && nutbam_bd() == 0) 83 lOMoAR cPSD| 36006477
{ lcd.clear(); lcd.setCursor(1,0);
lcd.print("Xuat Hang: "); lcd.setCursor(14,0);
lcd.print(gtbt_so); lcd.setCursor(4,1);
lcd.print("Dang Xuat"); delay(500);
Xuat_hang(gtbt_so); lcd.clear();
lcd.setCursor(1,0); lcd.print("Xuat Hang: ");
lcd.setCursor(14,0); lcd.print(gtbt_so);
lcd.setCursor(4,1); lcd.print("Xuat Xong");
delay(5000); dem_ch = 0; dem_lh = 0; solan = 2; } delay(1); } 84