Cài đặt NodeJS trên Windows - mô hình môi trường IOT chuyên nghiệp

I. Giới thiệu

NodeJS là một hệ sinh thái Javascript mà ở đó bạn có thể lập trình nó như mọi ngôn ngữ lập trình nhúng như C++, python,... nó cũng có thể chạy đa nền tàng như Java vậy đó nhé. Nhưng luôn ghi nhớ Javascript và Java là khác nhau bạn nhé. Nodejs được xây dựng trên bộ Javascript engine V8 của Google. Mình sẽ không nói quá nhiều về chuyên môn trong bài viết này vì nó sẽ đi lệch định hướng của cộng đồng Arduino Việt Nam và cũng có rất nhiều cộng đồng NodeJS ở Việt Nam sẽ giúp bạn am tường hơn về NodeJS. Qua bài viết này, mình mong muốn bạn sẽ biết cách cài đặt NodeJS và giúp bạn thấy được tiềm năng IOT của nó.

II. Cài đặt

Để tải về Nodejs, bạn truy cập trang https://nodejs.org/en/ và tải về theo hướng dẫn. Mình khuyên các bạn nên dùng bản phần lớn người dùng lựa chọn (bôi đỏ). Khi dùng opensource bạn nên chấp nhận một thực tế là bản mới nhất chưa chắc là bản ổn định nhất devil.

Sau đó bật file .msi vừa tải về và Next liên tục thôi :)

Sau khi tải về, bạn mở Command line của nodejs lên và thử các lệnh sau đây, nếu nó trả về kết quả tương tự như hình dưới là bạn đã cài nodejs thành công rồi đấy.

node -v

npm -v

Để hiểu hơn về NodeJS, bạn cần phải tìm hiểu thêm về nó, sau đây, mình xin gửi một số địa chỉ mà mình nghĩ bạn có thể sử dụng trong quá trình học NodeJS

  • http://www.nodebeginner.org/index-vi.html - một trang giới thiệu và nodejs và các khái niệm cơ bản nên học
  • https://nodejs.org/api/index.html - Toàn bộ API của Nodejs (dùng để bí vô tra thôi chứ không phải để học nha, bạn chưa có kiến thức nền tảng mà vô đây học là tẩu hỏa nhập ma ngay đó devil)
  • http://techmaster.vn/posts/33448/nodejs-cho-nguoi-moi-bat-dau - Học NodeJs cần những gì
  • Vì mình bắt đầu với Nodejs khi đã khá rành về Javascript nên mình đề xuất các bạn học Javascript trước, để học javascript tốt, bạn nên dùng trang này http://www.w3schools.com/js/
  • Khi đã có kiến thức javascript rồi thì cái gì cũng dễ hết á, cứ theo API của nodejs ở các tài liệu tham khảo mình liệt kê ở trên là ổn. Nếu bí thì bạn cứ google từ khóa "nodejs + vấn đề" là ra thôi à.
  • Hệ sinh thái các thư viện nodejs là hệ sinh thái nguồn mở lớn nhất hành tinh vì vậy khi gặp vấn đề khó thì bạn có thể vô đây tìm https://www.npmjs.com/

III. Mô hình IOT với nodejs

NodeJS bản thân nó cũng khá mạnh trong việc lập trình nhúng khi chạy trên Intel Galileo hay Raspberry Pi. Tuy nhiên, chi phí để sở hữu một mạch Intel Galileo hay Raspberry Pi thật sự không phải là rẻ. Bên cạnh đó, mạch Arduino của chúng ta tuy rẻ và khá mạnh mẽ trong các ứng dụng đơn giản, nhưng để nó lên level Internet of Things thì bạn cần phải có nhiều mạch bổ trợ như Ethernet Shield hay ESP8266... Giữa một bên là lập trình bá đạo, đụng đến gần như mọi thứ ở NodeJS và một bên là chi phí siêu rẻ và hoạt động linh hoạt, đó chính là hai mặt của một vấn đề IOT. Vì vậy, để làm được IOT bạn phải giải quyết được vấn đề này, phải kết hợp cả 2 cái và dùng cả 2, dùng javascript trong giao tiếp với thế giới Internet vì khả năng mở rộng và sự linh hoạt thuần khiết, dùng Arduino để làm hệ thống cảm biến và thiết bị điều khiển thiết bị để giá thành cực rẻ và tập trung. 

Với kinh nghiệm của mình khi phát triển các hệ thống IOT đó là: hãy sử dụng mô hình micro service, vì mỗi phần trong hệ thống sẽ là một service, mỗi service sẽ có API riêng và chúng sẽ giao tiếp với nhau qua mạng. Từ mạng, ở đây không chỉ nói đến mạng Internet mà còn nói đến mạng cảm biến sử dụng sóng vô tuyến ở Arduino đấy bạn nhé.

Một số dự án IOT 

  • https://cylonjs.com/
  • https://ms-iot.github.io/content/en-US/win10/samples/Nodejs.htm
  • http://nodered.org/

IV. Tương lai IOT với Cộng đồng Arudino Việt Nam

Hiện tại mình đang xây dựng một mô hình mạng cảm biến cho Arduino với việc mở rộng node lên đến 50 node (tương lai là hàng vạn node - lý thuyết). Và để dùng được nó, bạn cần biết một ít về NodeJS để lập trình mạng cho hệ thống mạng cảm biến này heart. Đây sẽ là một dự án dài hơi mang tính cộng đồng nguồn mở dưới giấy phép GNU GPL v3.0. Sắp tới, mình rất mong nhận được sự hỗ trợ, đóng góp của các bạn devil.

lên
30 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Vietnam Maker Contest with Intel Galileo - VMIG - Cuộc thi sáng tạo với Galileo dành cho Sinh viên Việt Nam

Hôm nay là một ngày vui, 30/7/2015. Vì chỉ còn 2 ngày nữa (1/8/2015), cuộc thi Sáng tạo với Intel Galileo dành cho sinh viên sẽ được chính sức khởi động. Giải thưởng của cuộc thi rất lớn trên 20 triệu đồng, đồng thời chúng ta được hỗ trợ mạch Galileo Gen 2 và 2 triệu động để làm dự án nữa,... còn chần chừ gì mà không tìm hiểu ngay.

lên
2 thành viên đã đánh giá bài viết này hữu ích.

Giấy phép nguồn mở, giấy phép tài liệu mở - Quyền lợi, nghĩa vụ của bạn trong thế giới nguồn mở

Trong thời đại số này, việc tiếp cận và sử dụng những tri thức đã không còn khó khăn, bạn chỉ cần một trình duyệt và một máy tính cùng với đường truyền mạng mà đã có thể truy cập vào nguồn tri thức rộng lớn trên thế giới. Nhưng, có bao giờ bạn tự nghĩ, ngoài quyền lợi cực lớn là được tiếp xúc với tri thức mở và được tác giả hỗ trợ khi gặp lỗi, bạn có trách nhiệm và nghĩa vụ gì? Và khi là bạn là tác giả, bạn sẽ được những quyền gì và với việc ý thức được quyền của mình, bạn sẽ cảm thấy tự tin hơn trong thế giới nguồn mở. Bạn sẽ hiểu được: không phải thứ gì mình có source thì nó đều là "nguồn mở", không phải thứ gì cho mình dùng miễn phí đều là nguồn mở,... Ý thực được điều này, giúp bạn đi nhanh và xa trong thế giới nguồn mở thế giới!

lên
10 thành viên đã đánh giá bài viết này hữu ích.