Nhóm tiến hành kiểm tra chức năng bơm tiêm thông thường của hệ thống. Vì nhóm sử dụng 3 loại kim tiêm (loại 5ml và loại 10ml) nên sẽ kiểm tra đối với từng loại kim tiêm. Các giá trị thời gian và thể tích được nhập vào được thể hiện trong bảng như sau:
Bảng 5.1 Giá trị thời gian, thể tích nhập vào và giá trị thực tế đo được đối với kim tiêm 5ml.
STT Thời gian nhập vào Thể tích nhập vào Thời gian thực tế Thể tích thực tế
01 20s 1ml 16.5s 0.95ml
02 40s 2ml 25s 2.05ml
03 60s 3ml 52s 3ml
04 80s 4ml 49s 4.04ml
05 100s 5ml 76s 4.95ml
Lần đầu kiểm tra chức năng bơm tiêm thông thường đối với ống 5ml, nhóm phát hiện giá trị thể tích bơm nằm trong mức cho phép, tuy nhiên giá trị thời gian lại có sự
CHƯƠNG 5. KẾT QUẢ, NHẬN XÉT, ĐÁNH GIÁ
chênh lệch rất lớn. Sai số về giá trị thời gian lớn nhất là 38,75%, sai số về giá trị thể tích lớn nhất là 5% (trường hợp thử nghiệm đầu tiên), tuy nhiên 5% của 1ml thì rất ít (0,05ml) nên kết quả về thể tích nằm trong mức chấp nhận được. Để tìm hiểu vì sao có sự chênh lệch về thời gian như vậy, nhóm đã kiểm tra lại thuật toán của đề tài.
Đối với thuật toán của đề tài, 2 giá trị thể tích và thời gian nhập vào, nhóm sẽ tính toán chuyển thành 2 giá trị là tổng số bước và thời gian quay một bước. Trong khoảng thời gian đầu lập trình thực hiện đồ án, nhóm xây dựng thuật toán như sau: Motor bước quay một vòng hết 200 bước (từ datasheet), để chia nhỏ số bước thì nhóm sử dụng driver với vi bước là 1/8, vì vậy lúc này cần: 200 𝑥 8 = 1600 (𝑏ướ𝑐) (5.1) thì motor sẽ quay đủ một vòng. Để biết được một vòng quay của motor bước đẩy được bao nhiêu ml thì nhóm tiến hành lập trình cho motor bước quay một vòng và đo đạt thể tích dịch chuyển trên bơm tiêm. Tuy nhiên, thể tích bơm tiêm đẩy đi một khoảng rất nhỏ, không xác định được chính xác bao nhiêu ml nên nhóm tiến hành lập trình bơm tiêm quay 10 vòng liên tiếp. Lúc này kết quả đo đạt được tổng thể tích bơm tiêm đã đẩy đi được là khoảng 1,95ml, đồng nghĩa với việc 1 vòng quay của motor bước sẽ đẩy được khoảng 0,195ml.
Từ giá trị 0,195ml tương ứng với một vòng quay motor bước trên, giả sử giá trị thể tích nhập vào là V (ml) thì motor bước cần quay:
𝑉
0,195 (𝑣ò𝑛𝑔) = 𝑉
0,195∗ 1600 (𝑏ướ𝑐) = 𝑉 ∗ 8205 (𝑏ướ𝑐) (5.2) Tổng số bước thực tế (đã được trình bày ở chương 4):
𝑡ổ𝑛𝑔 𝑠ố 𝑏ướ𝑐 = 𝑉 ∗ 8205 ∗ 2 = 𝑉 ∗ 16410 (𝑏ướ𝑐) (5.3) Giá trị thời gian một bước (t mb) được tính:
𝑡 𝑚𝑏 = 𝑇
𝑇ổ𝑛𝑔 𝑠ố 𝑏ướ𝑐 (5.4) Đối với giá trị thời gian một bước (t mb), nếu tính ra là số lẻ thì sẽ được kiểm tra để làm tròn, mục đích làm tròn là để so sánh với thời gian định thời. Vì thời gian định thời là các số nguyên như: 1ms, 2ms, 3ms, 4ms, … (nói cách khác là cộng dồn 1ms). Nguyên tắc làm tròn mà nhóm đã sử dụng là so sánh phần thập phân, nếu phần thập phân lớn hơn hoặc bằng 0.5 thì làm tròn thêm 1 đơn vị, nếu phần thập phân nhỏ hơn 0.5 thì làm tròn phần đơn vị về 0. Ví dụ như giá trị tính ra là từ X,5 đến X,9 thì đều làm tròn thành X +1, nếu giá trị tính ra là từ X,1 đến X,4 thì đều làm tròn thành X.
CHƯƠNG 5. KẾT QUẢ, NHẬN XÉT, ĐÁNH GIÁ
Quay trở lại với kết quả thu được từ bảng 5.1, từ thuật toán xây dựng ở trên, chúng ta sẽ tính toán kiểm tra tổng số bước và thời gian một bước tương ứng của từng trường hợp chạy thử nghiệm để đưa ra hướng giải quyết.
Bảng 5.2 Kết quả tính tổng số bước và thời gian một bước theo lý thuyết
STT Thời gian nhập vào (T) Thể tích nhập vào (V) Tổng số bước Thời gian một bước (t mb) tính theo lý thuyết Giá trị thời gian một bước sau khi làm tròn Giá trị chênh lệch giữa sau và trước khi làm tròn 01 20s 1ml 16410 1.2187 (ms) 1 -0.2187 (ms) 02 50s 2ml 32820 1.5234 (ms) 2 0.477 (ms) 03 90s 3ml 49230 1.8281 (ms) 2 0.1719 (ms) 04 100s 4ml 65640 1.5234 (ms) 2 0.4766 (ms) 05 140s 5ml 82050 1.7062 (ms) 2 0.2938 (ms)
Nhìn vào bảng 5.2 trên, ta có thể thấy giá trị thời gian một bước chênh lệch giữa trước và sau khi làm tròn là ít (khoảng nhỏ hơn 0.5 ms). Tuy nhiên, cần phải lưu ý rằng đây là giá trị làm tròn trên đơn vị là một bước, nghĩa là cứ mỗi lần motor bước quay một bước sẽ bị chênh lệch khoảng thời gian là bao nhiêu đó, để biết rõ khoảng chênh lệch với tổng thời thời gian trên lý thuyết là bao nhiêu, ta sẽ nhân với tổng số bước.
Bảng 5.3 So sánh chênh lệch thời gian trên đơn vị tổng số bước
STT Thời gian nhập vào (T) Thể tích nhập vào (V) Tổng số bước Giá trị chênh lệch giữa sau và trước
khi làm tròn
Tổng giá trị chênh lệch thời gian trên tổng số bước
01 20s 1ml 16410 -0.218 (ms) 16410 ∗ (−0.218) = −3.58s
02 50s 2ml 32820 0.477 (ms) 32820 ∗ 0.477 = 15.65s
03 90s 3ml 49230 0.1719 (ms) 49230 ∗ 0.1719 = 8.46s
04 100s 4ml 65640 0.4766 (ms) 65640 ∗ 0.4766 = 31.28s
CHƯƠNG 5. KẾT QUẢ, NHẬN XÉT, ĐÁNH GIÁ
Nhìn vàng bảng 5.3 trên, ta có thể thấy khoảng chênh lệch về thời gian trên tổng số bước là rất nhiều, đồng thời giải thích vì sao ta lại thu được kết quả thực tế từ bảng 5.1. Giá trị -3.58s có nghĩa là sẽ quay nhanh hơn 3.58s, thay vì trong khoảng 20s thì bơm tiêm bơm xong 1ml thì giờ đây chỉ cần khoảng 16,42s thì bơm tiêm đã bơm xong; còn các giá trị 15,65s, 8,46s, 31,28s, 24,1s thì thời gian bơm thực tế sẽ bị trễ hơn tương ứng với giá trị thời gian đó.
Mất khoảng hơn 1 tuần thì nhóm mới tìm ra được nguyên nhân bơm tiêm hoạt động bị lỗi thời gian là do thuật toán làm tròn như trên. Cách giải quyết vấn đề này là phải xử lý số thập phân của giá trị thời gian quay một bước của motor, và cách giải quyết như thế nào thì nhóm đã trình bày ở chương 4.
Như vậy, sau khi sử dụng thuật toán mới, kết quả nhóm kiểm tra được thể hiện trong bảng 5.4 như sau:
Bảng 5.4 Kết quả thời gian và thể tích thu được sau khi đổi thuật toán mới đối với bơm tiêm 5ml.
STT Thời gian nhập vào Thể tích nhập vào Thời gian thực tế Thể tích thực tế
01 20s 1ml 19.9s 0.95ml
02 40s 2ml 39.95s 2.05ml
03 60s 3ml 59.9s 3ml
04 80s 4ml 80s 4.04ml
05 100s 5ml 99.9s 4.95ml
Như vậy có thể kết luận, sau khi đổi thuật toán mới cho đề tài, các kết quả thể tích và thời gian nhập từ bàn phím tương đồng với kết quả thời gian và thể tích thực tế đo được, phần trăm sai số lớn nhất đối với giá trị thời gian là 0.5% và phần trăm sai số lớn nhất của thể tích là 5% (tuy nhiên 5% của 1ml nên nằm trong mức cho phép). Nhóm tiến hành cho bơm tiêm hoạt động nhiều lần để kiểm tra độ ổn định của chức năng bơm tiêm thông thường thì kết quả vẫn tương đồng. Mất khoảng thời gian hơn 1 tuần kể từ lúc phát hiện ra lỗi và khắc phục thành công lỗi này cho đề tài. Một số hình ảnh nhóm ghi lại được trong quá trình kiểm tra:
CHƯƠNG 5. KẾT QUẢ, NHẬN XÉT, ĐÁNH GIÁ
Hình 5.4 Các giá trị thời gian và thể tích được nhóm kiểm tra. Các giá trị thời gian và thể tích ở bảng 5.4 được kiểm tra như hình 5.4.
Bảng 5.5 Kết quả thời gian và thể tích thực tế kiểm tra được đối với bơm tiêm 10ml STT Thời gian nhập vào Thể tích nhập vào Thời gian thực tế Thể tích thực tế
01 20s 2ml 19.8s 2ml
02 40s 4ml 39.9s 4,05ml
03 60s 6ml 60,1s 6,02ml
04 80s 8ml 81s 8ml
05 100s 10ml 99.9s 9,9ml
Bảng 5.6 Kết quả thời gian và thể tích thực tế kiểm tra được đối với bơm tiêm 50ml STT Thời gian nhập vào Thể tích nhập vào Thời gian thực tế Thể tích thực tế
01 60s 10ml 60.2s 10,5ml
02 90s 20ml 92.9s 20,2ml
03 120s 30ml 122,1s 30,1ml
04 150s 40ml 152s 40,18ml
05 180s 50ml 183.9s 50ml
Từ bảng 5.5 và 5.6 trên, ta có thể thấy giá trị thời gian thực tế và thể tích thực tế thu được đều nằm trong mức cho phép và tương đồng với giá trị nhập vào, giá trị sai số về thời gian lớn nhất là 1%, giá trị sai số về thể tích lớn nhất là 1,25%. Nhóm tiến hành
CHƯƠNG 5. KẾT QUẢ, NHẬN XÉT, ĐÁNH GIÁ
trong mức cho phép. Như vậy, có thể khẳng định, sau khi thay đổi thuật toán mới thì bơm tiêm dường như hoạt động ổn định, có độ chính xác và không gặp bất kỳ lỗi nào nữa đối với chức năng bơm tiêm thông thường.