Reference - Giấc mơ đổi đời với Keno - Vietlott (Crawl Data Keno - Vietlott from minhchinh dot com)


Sau bốn rưỡi chưa biết ai giàu hơn ai nhé keke, đó là xưa rồi vì giờ này đối với Keno Vietlott thì sau 10 phút chưa biết ai giàu hơn kakak. Có một thanh niên ôm mộng làm giàu sau 10 phút cho hay :)


Crawl Data Keno - Vietlott from minhchinh dot com


Như hình bên trên thanh niên thấy nó nhảy sau 10 phút một lần và dãy số này random theo range 1 đến 80, làm sao dự đoán chính xác số sẽ ra. Như qua tìm hiểu thì tìm thấy có nhiều cách tính toán nghiên cứu cống nạp gì đây bla bla.

Sau một hồi review sơ qua trang web này thì nhẩm nhẩm chém gió cho sang miệng chứ thực chất đoán lụi vài số xem sao, chả ra số nào mà chẳng hiểu xác xuất của nó ra sao.

Ok, không biết thì ngồi tính, mà lấy gì tính đây thế là quyết tâm lấy Data về nghiên cứu xem nó như thế nào, với giấc mơ nuôi mộng làm giàu kakaka.

Bắt tay vào Crawl hết các kết quả về ngồi vọc :

Đầu tiên kiểm tra xem cấu trúc html nó có dễ đọc không và kết quả rõ ràng như sau nên xem ra khá nhẹ nhàng, không khó lắm. 

Check sơ qua thì thấy trang web này chỉ hoạt động kỳ xổ từ 6h sáng đến 22h đêm là ngừng, khi đó data sẽ không biến động, cắm máy chạy tới sáng là ngon lành :)


Crawl Data Keno - Vietlott from minhchinh dot com

Và ý tưởng sẽ là mở browser sau đó bấm từng trang là lấy data lưu lại, ví dụ mở lên vào web chọn page 1 lấy data xong bấm vào trang 2 và lấy tiếp tục, cứ tuần tự click hết các trang và sẽ lấy các dữ liệu đang có.


Crawl Data Keno - Vietlott from minhchinh dot com

Lôi python ra dùng, sẽ dùng thư viện Selenium WebDriver, ban đầu dùng chrome để chạy, nhưng chạy được thời gian thì phát sinh lỗi vì mỗi khi load page thì xảy ra tình trạng lag lag khá cao, tỉ lệ source html đọc không chính xác dù máy của mình thuộc hàng khủng nhưng cũng không giải quyết được gì cho lắm nên chuyển sang Firefox thì chạy khá ngon lành và nhẹ nhàng.


Crawl Data Keno - Vietlott from minhchinh dot com

Giải thích sơ về đoạn code trên như sau :

Sau khi import thư viện thì mở trình duyệt lên theo chế độ ẩn danh, tốt nhất nên set mode chế độ này sẽ tốt hơn.

geckodriver : tải theo link sau

https://github.com/mozilla/geckodriver/releases


GeckoDriver là gì? GeckoDriver là một công cụ trình duyệt web được sử dụng trong nhiều ứng dụng do Mozilla Foundation và Mozilla Corporation phát triển. GeckoDriver  là liên kết giữa các bài kiểm tra của bạn trong Selenium và trình duyệt Firefox. GeckoDriver là một proxy để sử dụng các ứng dụng khách tương thích với W3C WebDriver để tương tác với các trình duyệt dựa trên Gecko. Để khởi tạo đối tượng của GeckoDriver, bạn chỉ cần tạo đối tượng với sự trợ giúp của lệnh dưới đây.


# Options firefox
firefox_options = webdriver.FirefoxOptions()
firefox_options.add_argument("--private")
driver_firefox = webdriver.Firefox(firefox_options=firefox_options, executable_path='./geckodriver')


Sau khi mở trình duyệt thì nhập link vào để trình duyệt load vào trang muốn lấy data


url = "https://www.minhchinh.com/xo-so-dien-toan-keno.html"
driver_firefox.get(url)
time.sleep(10)


Còn lại thấy gần 3000 trang nên để cho nó chạy tới 3000, điểm quan trọng nhất là xpath, dựa vào nó để biết được cái button pagination ở đâu mà click vào :)


path_click = './/a[@href="javascript:chosePage('+str(i + 1)+')"]'

Sau khi chạy page lên là lấy dữ liện ghi vào file, khá đơn giản

elements = driver_firefox.find_elements_by_css_selector(".wrapperKQKeno")

Thế là cắm máy để nó chạy thôi và mơ về giấc mơ đang phân tích đống data này và tìm ra 10 con số trúng 2 tỷ kakaka


Crawl Data Keno - Vietlott from minhchinh dot com


Còn muốn lấy data đã kéo sẵn thì vào link đây : link

Có data rồi giờ phân tích và dự đoán mới căng, thôi đấp mền mơ tiếp kaka


Crawl Data Keno - Vietlott from minhchinh dot com


Nhãn:

Reference - Chém gió hiệp 2 về RabbitMQ performance với Python dùng pika



Như hôm qua đã chém sơ về cách thức hoạt động RabbitMQ, cũng đã test thử nó chạy như thế nào rồi và kết quả khá là ngon lành. Có thể tham khảo ở bài chém gió về RabbitMQ performance



Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika



Về phương thức test thì không gì là thay đổi, cũng code cũ, RabbitMQ chạy trên host cũ nhưng lần này thay đổi xíu như sau : Ở phấn trước thì tập trung vào message queue và dung lượng message cũng khá nhẹ, một đoạn xíu vậy cũng chưa đã lắm :)


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika



Như trên show ra hết rồi nên tối nay quyết cho nó banh luôn, mục tiêu sẽ là gởi file chứ không gởi text nữa. :) (Mặt ngầu)


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika


Xem sơ về code như sau :

Producer (Sender)


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika


Consumer (Receiver)


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika


Data sẽ là file pdf, chơi luôn file 8.2MB :)


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika



Phát đầu tiên : Cho nó gởi nhưng không nhận message xem nó chơi cỡ nào :)

Message Queue càng lên thì Ram cung lên theo, RabbitMQ server thì vẫn chạy phà phà, không có gì là nặng nề cho lắm, giờ phải đợi thời gian mới nói được. :)


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika


Và message mã hóa theo base64


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika



Lên tới 100 queue là xem thấy Ram lên cao và nhìn thấy có vẻ đuối đuối rồi


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika


Và phát hiện ra một điểm cực kỳ hay, đến một thời điểm đang trên cao đã điều tiết lại Ram và xuống cực kỳ thấp trong khi queue đang tăng dần, và nó giống như quay lại thời điểm bắt đầu để kéo theo. Có lẽ vậy giờ RabbitMQ đã nhẹ nhàng hơn. hay đấy :)


Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika


 Và cứ thế là nó chạy thôi :) thấy lên xuống theo chu kỳ. good



Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika

Và cuối cùng nó đã banh :), banh ở đây là nó không cho các connections nào liên kết vào nó, để đảm bảo nó còn sống, cách duy nhất chỉ dùng được localhost trên chính nó kakaka, chỉ có nước chạy receiver trên chính nó để xả queue, cơ chế nó lên Ram khi bắt đầu get lên xuống tương tự như nhận :)



Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika



Phát thứ hai : Giờ test đơn đơn vừa gởi vừa nhận xem sao, bài test trên phải reboot lại mới test được phát thứ hai kakaka.

Phát thứ hai thì chạy khá ổn định, gởi đi và nhận ok, nói chung duyệt :)



Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika



Reference - Chém gió hiệp 2 về  RabbitMQ performance với Python dùng pika




Qua test sơ sơ chơi cho vui thôi thì thấy khá ok, nói chung được, cuối cùng nhận ra một điều không liên quan như sau : Bà mẹ con GPON ONT iGate GW020 VNPT cho như cục shit, test xíu mà reboot mấy lần, xài xíu chịu không nỗi :(


Nhãn:

Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay



Lâu lắm rồi mới rảnh rỗi ngồi viết lại, hôm nay ngồi vọc RabbitMQ xem performance nó như thế nào mà nhiều người dùng như vậy. :)


RabbitMQ là phần mềm Opensource message-broker , ban đầu nó thực hiện Advanced Message Queuing Protocol (AMQP) và sau này mở rộng thêm kiến trúc hỗ trợ cho Streaming Text Oriented Messaging Protocol và MQTT protocol, cái này có thể vào trang chủ nó để xem.




Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay




OK, giờ đang phân vân nên chọn máy ảo hay là máy thật, đã test thì chơi lớn luôn lôi cái laptop i5 8Gb win10 ra chơi.


Cái này cài khá đơn giản nên vào đây tải về là cài thôi, nhanh mau lẹ, RabbitMQ không bận tâm việc cài lắm đâu, quan trọng hiểu nó và config cho nó chạy theo yêu cầu mới quan trọng, đây win 10 next next nên nhanh.


Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay


Cuối cùng thì phần cài đặt cũng xong



Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay


Giờ mục đích sẽ như sau : Bài test này sẽ bắt đầu gồm 2 phần, một là sender gởi message sang receiver, tạm hiểu như mô hình rabbitmq là Producer gởi message cho Consumer. Chơi kiểu demo đơn giản vậy mới nhanh thấy :)


Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay



Sau khi ngồi test trên RabbitMQ Management nào là tạo queue name xong tạo exchange gán  Bindings xong, test Publish message kiểm tra thì mọi thứ ok


Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay




Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay



Như tiêu đề RabbitMQ performance, thế là lôi python pika lib và chiến thôi, mục tiêu là tao ra thật nhiều queue, nào là send và receive thật nhiều xem nó banh không :)


pip install pika


Producer (Sender)



Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay



Consumer (Receiver)



Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay



Trước tiên chạy sender trước vì muốn nó có thật nhiều queue xem nó như thế nào, chơi nhiều tab cho nhanh haha. Nói cho vui chứ không khác nào DDOS luôn, nhưng kệ vậy mới xem được nó ngon lành hay không :)


Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay




Mới đầu là chạy thấy ngon ngon, lên vài tab nữa là báo đỏ, xem lại memory nó đỏ cmnr, default nó lên 4Gb là đỏ, cảnh báo, thế nào nâng lên 6Gb xem sức tới đâu



Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay


Như vậy queue càng cao thì performance càng cao nhưng vấn đề đang để publish message ồ ạc nhưng nó vẫn gánh nỗi khá là ok, nếu một host bình thường mà request ồ ạc vậy coi như banh luôn.


Nó có cơ chế khi request nhiều quá sẽ khóa lại, đợi ok rồi nhả ra từ từ nên hệ thống lúc nào cũng được an toàn hơn, không bị banh nữa chừng :) nó sẽ theo dõi và đánh vào các Connections, thằng nào mà tào lao là khóa phát, êm êm nói chuyện lại haha.

 Tiếp theo chạy Consumer để nó nhận hết các message queue về, thời gian nhận cũng khá nhanh vì message cũng nhẹ, nên thời gian giải phóng cũng nhanh.


Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay


Sau khi giải phóng hết Queue message thì nó nhẹ nhàng như sau




Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay


Test thử vừa send vừa nhận 1 triệu message

Sau khi chạy xong kiểm tra thì Message rates cũng tương đối :)



Reference - Ngày nghỉ ngồi chém gió về RabbitMQ performance với Python có gì hay



Tùy vào mục đích bạn cần làm gì thì đưa vào sử dụng từ cách config, nhu cầu vật lý thích ứng ra sao cho phù hợp... Thường các hệ thống lớn người ta mới dùng đến RabbitMQ hoặc Microservice architecture bạn mới biết đến và dùng nó, đa phần là vậy.


Ok chém gió tới đây cũng tạm được rồi, nếu tiếp xúc và trực tiếp test và vọc vạch nghiên cứu thằng này bạn sẽ thấy rất tuyệt vời luôn :)



Nhãn:

Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn



Tối nay rãnh rỗi sẽ chém gió về  Google IT Automation with Python Professional Certificate xem có gì hấp dẫn hay không. Vậy nó là cái quái gì vậy?OK cùng tìm hiểu nó ra sao :)


Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn




Khóa học này là của Google và nó được xếp vào new beginner-level, nó sẽ dạy từ căn bản ban đầu để tìm hiểu về Python.


Mục đích tổng thể của khóa học này bao gồm 6 khóa học bắt đầu từ nhập môn đến khi gọi là va chạm thực tế qua môi trường Lab, và khóa học này do Google thiết kế để cung cấp kiến thức cho IT hệ thống thực hiện tự động hóa.


Nghe tự động hóa là thấy ghê ghê phê phê rồi hen :) Mẹ làm việc theo Task thì làm xong nghỉ sớm , việc nhanh gọn, đúng yêu cầu và chuyên nghiệp là ok rôi, chứ ngồi mò mò thủ công cho người ta thấy ah có làm việc siêng năng ngày 8 tiếng cật lực trong khi công việc người ta có thể làm 1 tiếng đồng hồ những việc đó thì thấy nản cmnr :)


OK, Trước khi học khóa học này có tìm hiểu sơ qua nhiều nguồn, từ diễn đàn đến các trang dạy online cũng có nhắc tới Google IT Automation with Python, họ đánh giá nó khá đầy đủ và khá hay cho người bắt đầu.


COURSE 1 : Crash Course on Python


Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn



Được thiết kế để dạy cho bạn các nền tảng để viết các chương trình đơn giản bằng Python bằng các cấu trúc phổ biến, nó giới thiệu cho biết lợi ích của tự động hóa là gì, học nó giải quyết được cái gì ? để giúp giảm thiểu tối đa công việc cho bạn. Nếu có việc gì mà cứ làm đi làm lại hoài thì dùng nó hỗ trợ cho bạn.


Khi học phần này sẽ hướng dẫn chi tiết cú pháp ra sao, tại sao đầu tiên phải học cú pháp, vòng lặp là gì , toán tử list, dict, tupe bla bla, đa phần căn bản là ok, có thêm link refer nữa cũng như định hướng cho bạn cách học.


COURSE 2 : Using Python to Interact with the Operating System


Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn



Bạn sẽ có thể thao tác trên các file và quy trình trên hệ điều hành máy tính của mình. Cũng sẽ tìm hiểu về các biểu thức ,một công cụ rất mạnh để xử lý các tệp văn bản  và   thực hành sử dụng dòng lệnh Linux trên máy ảo...

Và trong khóa học này sẽ biết cách quarn lý file ra sao, Regular expression là cái gì nó giúp ích bạn như thế nào trong hệ thống.

Giúp bạn quản lý được Data và quy trình làm việc ra sao cho hiệu quả, xử lý log file ,h ướng dẫn bạn biết cách test chương trình cảu mình, viết Unit test, các phương pháp test ra sao... Phần này sẽ được thực hành trên Qwiklabs, còn Qwiklabs là cái gì thì tham khảo link sau có nói về nó :  Google IT Support


COURSE 3 : Introduction to Git and GitHub


Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn



Sẽ tìm hiểu về git vs github là gì, lưu trữ code ra sao, tạo repo github , cách cài đặt Git như thế nào... và nó sẽ hướng dẫn bạn step by step , cách lưu trữ và quản lý code.


Từ tracking file đến Rollbacks, Merging code như thế nào và cú pháp cli ra sao, giúp bạn có cái nhìn tống quan hơn về cách sử dụng Git và cách lưu trữ project trên Github.


Sau khi hướng dẫn tổng quan về cách sử dụng sao hiệu quả , troubleshoot bla bla ra sao và giới thiệu sơ về  GIT CHEAT SHEET vs Git Fork và cách tìm hiểu tài liệu xong là chiến thôi :)


COURSE 4 : Troubleshooting and Debugging Techniques


Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn




Trong khóa học này bạn sẽ được học các nguyên tắc cơ bản để khắc phục sự cố, giúp bạn tiếp cận đúng vấn đề và giải quyết một cách hiệu qủa nhất và phần này sẽ nằm trong Troubleshooting Concepts.


Còn trong Slowness sẽ giúp bạn hình dung nhận thức được các lý do khiến máy bạn bị chậm khi chạy chương trình hay tại sao chương trình của bạn chạy chậm... và cách check code xem sao để giải quyết vấn đề và tìm nguyên nhân cốt lõi.


"Why has my program crashed?" đây là câu hỏi hóc búa nhất, trong phần này bạn sẽ học cách tìm nguyên nhân, check log ... có cái nhìn và dự đoán tốt hơn, thu hẹp khả năng truy tìm lỗi.


Và cách quản lý tài nguyện ra sao cho hiệu quả, giải quyết các vấn đề như phần mềm bé tạo mà chạy ngốn 50% tài nguyên hệ thống ... Tất cả mọi thứ của phần này sẽ ngốn mất một tháng của bạn, nếu như đúng hạn và chịu khó tìm hiểu thêm :)


COURSE 5 :Configuration Management and the Cloud


Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn



Giới thiệu về khái niệm tự động hóa và làm thế nào để đạt được thành công, tìm hiểu ý nghĩa của việc làm việc tự động hóa là cần thiết để mở rộng hiệu quả. Tiếp theo, bạn sẽ được giới thiệu về quản lý cấu hình. Bạn sẽ tìm hiểu sự khác biệt giữa quản lý cấu hình không được quản lý và quản lý....

Nói một cách dễ hiểu nếu bạn đã sử dụng qua Google Cloud rồi thì sẽ thấy, một là có thể làm bằng giao diện web, hai là dùng CLI, phần này sẽ giúp tự động hóa trên này ví dụ chạy 100 VMs... Mornitor GCP, Migrating ...


COURSE 6 : Automating Real-World Tasks with Python


Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn



Phần cuối này như là phần thực chiến, đánh trận giả trước thì ra trận thật :) giải quyết các tình huống trong thế giới thực trong Qwiklabs sẽ thách thức bạn sử dụng nhiều kỹ năng cùng một lúc, sử dụng tuần tự hóa dữ liệu để biến các đối tượng trong bộ nhớ thành các tin nhắn có thể được gửi đến các chương trình khác.


Chương trình của bạn sẽ gửi tin nhắn qua mạng đến Giao diện lập trình ứng dụng (API) được cung cấp bởi các chương trình khác...


Khóa học chỉ là khóa học, là thành quả của người đi trước truyền đạt lại, có giúp có cái nhìn tốt hơn, biết được cái nào cần học, cần tìm hiểu, tuy nhiều nhưng chọn lọc cái nào phù hợp với công việc của mình... Tự học là tốt, nhưng tự học có sự định hướng vạch đường cho đi thì tốt hơn :)


Nếu bạn không cập nhật kiến thức hôm nay, 5 năm sau bạn chỉ là ông lão ngồi chém gió về công nghệ cũ :) OK, tối nay chém gió thế là ok rồi, ah học xong cái này có được cái Certificate cũng hay hay đó, đại khái nó như hình bên dưới, nôm na là vậy :)


Reference - Chém gió về Google IT Automation with Python Professional Certificate có gì hấp dẫn






Nhãn:

Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



OK, trước đây khi ngày nghỉ cuối tuần là lôi sensor ra vọc vạch chơi, với bộ Kit cũ mỗi lần làm gì thì dây nhợ hơi lằng nhằng, cũng nhờ dây nhợ vậy mà học được  ra rất nhiều kinh nghiệm.

Sau hai tháng bận rộn giờ mới thực sự rãnh rỗi mà đụng tới bo mạch này kia, giờ đến phần khoe trước, để khỏi mất nhiều thời gian nên đã chuyển sang bộ Kit mới : Grove Creator Kit -γ, và code python trên ESP8266 NodeMCU Lua V3  (vài chục ngàn khá rẻ) . keke



Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



Bộ Grove Creator Kit -γ này là bộ có full sensor nhất trong các bộ từ - α - β và đến chính nó γ.




Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button




Để code được Python trên ESP8266 yêu cầu phải cài lại firmware hỗ trợ python, thì flash lại thì khá dễ dàng, chủ yếu tải đúng gói về và dùng vài tool nữa là xong, có thể tham khảo bào sau để biết :
Hướng dẫn update firmware cho Esp8266


http://micropython.org/download/all/ esp8266-1m-20200408-v1.12-351-gbd5633778.bin


Toàn bộ làm trên Linux, nếu dùng windowns thì cũng tương tự




Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



Ví dụ 1 : Dùng MicroPython trên ESP8266 điều khiển Grove sensor Green LED tăng giảm độ sáng với Rotary Angle Sensor.


Trong phần này đầu tiên cần biết được thông số của ESP8266, thì cần tham khảo datasheet esp8266 link


Sơ đồ đấu nối : Trên Grove thì không cần bận tâm nhiều đến đấu nối, cứ nhớ rằng có 4 dây, 3 dây sử dụng tương ứng Cực âm, cực dương và Tín hiệu (Màu đen, màu đỏ và màu vàng)



Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



Green LED :
                     + ------ 3v
                     - ------- G
                     S ------ D7

Rotary Angle Sensor :
                     + ------ 3v
                     - ------- G
                     S------ A0



Mô tả sẽ như sau : Sử dụng thư thiện machine import Pin, PWM, ADC


Pin : Khai báo Pin cho led, ở đây chọn D7 sẽ là tín hiêu cho led
PWM :Giúp điều chỉnh xung dòng điện các cổng sau hỗ trợ PWM :0, 2, 4, 5, 12, 13, 14 ,15
ADC : Trên bo mạch này chỉ có mỗi A0 hỗ trợ Analog to Digital Conversion, nên bắt buộc phải dùng nó.


Theo code bên dưới là freq là lưu ngưỡng cao nhất của xung dòng điện, duty chỉ nhận giá trị thấp nhất là 0 và cao nhất là freq, khi điều chỉnh Rotary nó sẽ đọc values của Rotary và cập nhật lại cường độ nhưng thỏa mãn ngưỡng đó. Theo mặc định Rotary đọc value của D0 là 1024 (mặc định), tương tự vậy điều chỉnh tăng giảm từ 0 - 1024


OK, lý thuyết là vậy, giờ test thôi.



Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



Rotary giảm




Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button


Rotary tăng


Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



Và code hoàn chỉnh như sau, đưa vào function cho nhìn gọn gàng khoa học



Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



Ví dụ 2 : Dùng MicroPython trên ESP8266 điều khiển Grove sensor Green LED tắt mở bằng công tắt Button


Sơ đồ :

Green LED : 
                     + ------ 3v
                     - ------- G
                     S ------ D5(GPOP14)

Button: 
                     + ------ 3v
                     - ------- G
                     S ------ D7(GPOP13)




Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button



Reference - 01 - MicroPython trên ESP8266 xử lý module sensor Grove : Green LED, Rotary Angle Sensor, Button




Nhãn: