Mình đã làm bể cá thông minh như thế nào – Giới thiệu phần cứng – Wemos (phần 2)

Mục lục

Phần 1: https://viblo.asia/p/minh-da-lam-be-ca-thong-minh-nhu-the-nao-phan-1-jvEla6nx5kw Phần 2: https://viblo.asia/p/minh-da-lam-be-ca-thong-minh-nhu-the-nao-gioi-thieu-phan-cung-wemos-phan-2-RQqKLnmml7z Phần 3: Đang update Phần 4: Đang update

Xin chào các bạn! Tiếp tục với topic Làm bể cá thông minh, hôm nay mình xin giới thiệu với các bạn các khái niệm quan hệ đến phần cứng. Các quan tâm khi dùng bất kì em chíp nào. song song với đó mình sẽ giới thiệu với các bạn về Esp8266 (cụ thể ở đây là Wemos) và cách chinh phục em nó.

Bài viết sẽ có khá nhiều kiến thức quan hệ đến phần cứng. Mình sẽ dốc sức giải thích thật rõ cho các bạn dễ hiểu nhất và học sinh lớp 3 cũng có thể hiểu được. 🙂 🙂 🙂

I. một vài vật dụng rất cần

1. Chân nối

Khi 2 dây muốn dẫn điện với nhau thì ta cần phải nối chúng với nhau (thật dễ hiểu phải không :v ). Thực tế thì các dây sẽ được hàn với nhau. Và hàn vào mạch như thế này

mặc dù vậy ta là các lập trình viêneloper (các nhà phát huy) không thể hàn cứng như vậy được. Hôm nay ta muốn nối vào thiết bị này nhưng hôm sau ta lại nối vào thiết bị khác. Như vậy ta cần phải có các giắc nối để nối 2 đầu thiết bị vào với nhau. ta thường dùng dây nối như này đây:

Và có 2 loại đầu dây cần quan tâm, khi đi mua bạn chỉ cần nói đúng tên là người bán sẽ bán cho bạn đúng thứ mình cần:

Chân đực: là loại dây có 1 đầu nhọn bằng kim loại nhô ra ngoài Chân cái: là loại dây có lỗ để chân đực luồn vào

Quá dễ hiểu và khó quên phải không nào. Cái thì có lỗ, đực thì có cái dài nhô ra.
Như vậy khi đi mua dây cắm chỉ cần nói là "Cho em mua Dây nối Đực đực" hoặc Đực cái,… là nhà kinh doanh hiểu và bán đúng dây cho bạn. 🙂

2. Điện trở

Thông thường các bạn hay dùng module (mạch trang bị sẵn) nên rất ít khi phải động đến mạch điện. Nhưng ta cần phải hiểu nó một chút. Biết đồ biết vận dụng thì lắp mạch không còn là nỗi ám ảnh nữa.

Bài này không phải là bài viết cho dân điện tử nên mình chỉ giới thiệu điện trở thôi còn nhiều loại nữa như là tụ điện, cuộn cảm, transistor, diode,… các bạn tự tìm đọc nhé.

Điện trở là gì? Điện trở là cái này:

Cái tên của nó đã nói lên tất cả. Điện trở là cái để cản trở dòng điện. Vâng, đúng vậy. Mỗi khi ta muốn lắp 1 cái thiết bị nào đó mà bản thân nó không thể cản trở dòng điện thì ta cần phải lắp thêm điện trở (ví dụ cái đèn led chẳng hạn). Hoặc khi ta muốn cản trở dòng điện đi qua một thiết bị thì lắp thêm cái điện trở thôi (ví dụ như cấp điện cho cực E của transistor chẳng hạn).

II. Những điều cần biết khi dùng một thiết bị phần cứng

Như các bạn đã biết, khi làm một việc gì đó mà ta không hiểu rõ về nó thì ta sẽ rất hay nhầm lẫn và lúng túng. Điều đó sẽ dẫn đến một quyết định sai lầm hoặc kết quả không hay và có thể dẫn tới một hậu quả gì đó.

Nếu như khi ta lập trình phần mềm thì ta cho vào host test. Sai thì sửa, hỏng thì đập đi làm lại. Thì phần cứng lại khác (Thiết bị phần cứng mình nói ở đây là các mạch phát huy, các kit dành cho lập trình viêneloper). Khi làm việc với phần cứng là ta sẽ thao tác trực tiếp với thiết bị. Và thiết bị rất dễ bị hỏng nếu ta không biết dùng. Chỉ cần cắm sai 1 chân, cho vào nhầm 1 lỗ thì có thể dẫn đến hỏng một phần hoặc hỏng luôn cái mạch. Mục này mình xin giới thiệu các loại chân cắm có thể có trong một thiết bị phần cứng.

Thông thường, khi làm việc với board nào đó thì bạn phải tra datasheet của board đó để biết được vị trí các chân, các giới hạn cấp quyền, các cổng liên kết, các tin tức bộ nhớ,…

Cũng có thể nhà sản xuất sẽ in chức năng chính của đã có lần chân lên ngay trên mạch. Ta cần phải quan tâm điều đó để đỡ cắm nhầm.
Thông thường ta phải quan tâm các loại chân sau:

1. Chân nguồn

Có 2 loại nguồn ra và nguồn vào. Thông thường ta sẽ cấp nguồn vào ở cổng usb (vừa để nạp code vừa để cấp nguồn luôn). Nhưng đôi khi các bạn cần cắm nguồn ngoài thì cần phải quan tâm đến các loại chân và các đặc điểm sau:

GND đây là chân cực kì quan trọng. Nó thường có khá nhiều vì nhiều thiết bị khác cắm vào sẽ dùng nó. Nó là chân chung duy nhất cho tất cả các liên kết. Bạn có thể liên kết bất kì chân GND nào vào với nhau mà không lo bị hỏng. Chân này giống như mốc 0 của tọa độ, mực nước biển trong việc đo chiều cao. Nó là mức 0 để đối chiếu giá trị của các chân vào ra (IO). tên thông thường là cực âm, cực –, đất, Ground 5V, 3.3V đây là các chân nguồn ra. Có nghĩa là bạn có thể lấy nguồn từ đây để dùng cho các thiết bị khác. Bạn không được cấp nguồn qua các chân này. VIN, VCC đây là các chân nguồn vào. Bạn có thể cấp cực dương của nguồn vào đây để thiết bị có thể làm việc từ nguồn ngoài. Cơ mà, nguồn thì sẽ có cực âm nữa. Vậy cực âm nối vào chỗ nào? Đây là một câu hỏi có phần hài hước mà những người mới bắt đầu có thể đặt ra. Bạn mình cũng đã đã có lần hỏi mình câu này. :))) Mình xin trả lời với các bạn luôn. Hãy cứ thẳng tay mà cắm vào chân GND. Bất kì chân nối GND nào cũng được.

2. Chân tín hiệu

Một mạch kit phát huy sẽ có nhiều chân tín hiệu. Mỗi chân sẽ đảm nhận 1 hoặc nhiều chức năng khác nhau. Bạn hãy tra datasheet của thiết bị đó để biết thêm. Hoặc là tìm kiếm google với keyword Pinout <thiết bị> là nó sẽ ra đầy đủ cho bạn. Hãy nhớ để đúng chiều và tra đúng tác dụng của chân cắm đó. Khi nào thật đảm bảo thì mình mới cắm dây nối các thiết bị với nhau. sau cùng là cấp điện, cấp nguồn.

Đối với tín hiệu thông thường thì sẽ có 2 loại là digitalanalog, tương ứng với nó cũng sẽ có 2 loại chân digitalanalog.

Chân digital chỉ có 2 mức 0, 1 tương ứng với mức điện áp 0V và 5V (trên thực tế sẽ khác: mức 0 có thể từ 0V đến 1.5V, mức 1 có thể là mức > 1.5V. Đối với đã có lần mạch sẽ có mức điện áp cao nhất có thể đưa vào chân IO. Nếu quá mức này thì chân IO đó sẽ bị hỏng hoặc hỏng cả thiết bị). chức năng thông thường của nó là được dùng để nhận tín hiệu như nút bấm chẳng hạn và điều khiển bóng đèn tắt/bật. Kí hiệu thông thường: GPIOx, Dx (x là số hiệu của chân). Chân analog có thể đọc được các mức điện áp khác nhau phân ra đã có lần mức. Kiểu như là chia đoạn từ 0 đến 5V ra thành 1024 đoạn nhỏ, chẳng hạn vậy. Mỗi đoạn nhỏ là 1 mức. Khi điện áp nằm trong đoạn nhỏ đó thì sẽ tương ứng với một vài được quy định trong khi lập trình (với ví dụ trên thì sẽ có 1024 mức giá trị đo được). tiếp theo dựa vào các thông số đo được và qua 1 số phép tính sẽ cho ra kết quả đo của cảm biến. Thông thường các chân analog sẽ được dùng để đọc giá trị cảm biến. Tùy đã có lần mạch mới có loại chân này thôi. Ví dụ: mạch raspberry pi 3 sẽ không có chân analog, mạch arduino thì sẽ có khá nhiều, mạch Wemos mình sắp giới thiệu có duy nhất 1 chân analog. Kí hiệu thông thường: Ax (x là số hiệu của chân).

Chuẩn liên kết cơ bản
Có nhiều chuẩn liên kết để liên kết 2 hoặc nhiều phần cứng với nhau. Mình sẽ kể tên các chuẩn hay dùng nhất:

IIC, I2C: liên kết 2 dây SCLSDA bạn hãy nối như hình vẽ. Tất cả các dây SCL nối với nhau và tất cả các dây SDA nối với nhau. Và ta cần phải nối 2 trở kéo SCL và SDA lên 5V (giá trị trở phải lớn: 10K, 20K) một vài mạch sẽ tự có điện trở này. Bạn hãy đọc datasheet để xem có phải lắp không nhé. 😉

UART: Chuẩn liên kết này sẽ có 2 dây tín hiệu: RXTX. RX là nhận, TX là truyền. Và 2 thiết bị muốn truyền nhận được thì phải nối RX của thiết bị này với TX của thiết bị kia, và cần thêm dây nối 2 chân GND của 2 thiết bị với nhau nữa. thêm nữa còn phải set Baud rate cho 2 thiết bị là giống nhau. Chỉ cần cung ứng đúng các yêu cầu như vậy là thiết bị đã làm việc trơn tru.

Giới thiệu Wemos

Sau đây mình giới thiệu với các bạn về Wemos.

Cấu hình phần cứng

Operating Voltage 3.3V Clock Speed: 80MHz/160MHz Flash: 4M bytes Length: 34.2mm Width: 25.6mm Weight: 10g A Micro USB connection WiFi 2.4 GHz, 802.11 b/g/n, support WPA/WPA2

IO PIN

Digital I/O Pins: 11 Analog Input Pins: 1(Max input: 3.2V) All of the IO pins have interrupt/pwm/I2C/one-wire support except D0. All of the IO pins run at 3.3V.

Lập trình phần mềm

dùng Arduino IDE để lập trình và upload code. Ngôn ngữ lập trình C/C++ thân quen. Bạn có thể dùng sublime để lập trình cho thuận tiện rồi dùng Arduino IDE để upload code cũng được. :))))

Bài viết đã khá dài. Mình xin dừng tại đây. Nếu có khó khăn gì hãy để lại comment ở bên dưới. Mình sẽ giải đáp tận tâm.
Chúc các bạn thành công trên con đường chinh phục các thiết bị!
Mình sẽ trở lại với bài viết tiếp theo. Nói về việc dùng Wemos. Các bạn hãy đón đọc nhé.

Các bạn có thể xem lại phần 1 của mình tại đường dẫn sau đây:
https://viblo.asia/p/minh-da-lam-be-ca-thong-minh-nhu-the-nao-phan-1-jvEla6nx5kw

Nguồn viblo.asia