CÔNG VIỆC CỦA CHÚNG TÔI

+ Đào tạo & hỗ trợ thi & Cấp chứng chỉ Ứng dụng CNTT cơ bản, nâng cao
+ Cung cấp dịch vụ Thiết kế - Lập trình web
+ Các giải pháp triển khai - quản trị hệ thống mạng doanh nghiệp
+ ĐÀO TẠO CHUYÊN NGHIỆP: LẬP TRÌNH (C, .Net, ASP.net, PHP, Thiết kế Đồ họa

Arduino dễ như xếp hình Lego - 4 lý do nên học

Bai viet tu Techmasete
Có lẽ bạn đã nghe nói về Arduino rồi, hoặc cũng có thể là chưa. Nhưng thậm chí nếu bạn đã nghe về nó, thì có thể bạn vẫn chưa thực sự biết nó là gì, nó có thể làm những gì, hoặc lý do tại sao bạn nên quan tâm đến nó.
Rất nhiều người đặt tên Arduino là "trò chơi xếp hình Lego cho người lớn yêu công nghệ", và đó là sự thật, ít nhất là trong ý nghĩa rằng nó cho phép bạn tạo ra những sản phẩm tuyệt vời bằng cách kết hợp một loạt các linh kiện lại với nhau theo rất nhiều cách. Nhưng thực ra nó còn nhiều hơn thế nữa.
Thậm chí nếu bạn không phải là một người yêu thích công nghệ, bạn vẫn nên thử Arduino. Không chỉ là nó mang lại rất nhiều niềm vui, mà nó còn giúp bạn tăng khả năng sáng tạo, học được một số kỹ năng hữu ích cho cuộc sống, và tạo ra rất nhiều sản phẩm thú vị. Sau đây chúng ta hãy cùng xem Arduino có thể làm những gì nhé!

1. Bạn có thể làm ra rất nhiều thứ thú vị

Lý do chính để mua một Arduino là bạn có thể làm nhiều thứ thú vị với nó. Nếu bạn là một người thích vọc vậy, thì nó đúng là thứ bạn cần. Nhưng nếu bạn không thích vọc vậy thì sao? Tôi khuyên rằng bạn vẫn nên thử bởi vì nó có thể giúp đánh thức một khả năng tiềm ẩn chưa được khai phá trong con người bạn.
Nhưng bạn có thể tạo ra được những gì? Bất cứ thứ gì và mọi thứ. Nó có thể là đơn giản hay phức tạp, ngớ ngẩn hay có giá trị thực tiễn, nghiêm túc hoặc vui nhộn. Một khi bạn đã trở nên quen thuộc với nó thì chỉ có trí tưởng tượng là giới hạn của bạn mà thôi. Dưới đây là một số ý tưởng để kích thích sự tò mò của bạn.
Học lập trình Arduino trực tuyến tốt nhất
Nếu bạn đang bị cuốn theo cơn sốt về nhà thông minh (smart home), thì bạn sẽ hạnh phúc khi biết rằng Arduino có khả năng làm những việc như điều khiển độ sáng của các đèn thông minh, cho dù bằng tay hoặc với một bộ cảm biến chuyển động. 
Nếu bạn là một fan hâm mộ của bộ phim Star Wars mới nhất, thì có thể bạn sẽ thích hướng dẫn này: đó là cách tạo một con robot BB8 droid mà bạn có thể điều khiển bằng điện thoại thông minh của mình. Đó là một trong những dự án Arduino thú vị nhất từ trước đến nay và thực sự cho thấy những gì có thể được thực hiện với một chút sáng tạo.
Học lập trình Arduino trực tuyến tốt nhất
Không có cảm giác nào thú vị bằng việc tự tạo ra một con robot có thể hoạt động được, và Arduino làm cho nó trở nên dễ dàng hơn bao giờ hết. Nếu bạn mua bộ kit phù hợp, thì bạn có thể tạo ra một con robot với chi phí dưới $100 đô-la - nhưng nếu bạn tự thiết kế và mua các bộ phận linh kiện từ Trung Quốc, thì chi phí sẽ còn ít hơn rất nhiều.
Thậm chí bạn có thể kết hợp yếu tố âm nhạc và sinh học vào các dự án Arduino, như trong ví dụ trên nó sẽ phát hiện khi bạn chạm vào một cái lá và sẽ phát ra bản nhạc tương ứng.
Nhưng khi bạn mới làm quen với Arduino, đầu tiên bạn sẽ muốn học thông qua những dự án Arduino cho người mới bắt đầu. Hệ thống báo động cơ bản bằng Arduino (Basic Arduino Alarm System) là một dự án tốt để làm sau khi bạn đã nghiên cứu qua một vài hướng dẫn và học được những điều cơ bản.

2. Nó là một cách tuyệt vời để tiếp xúc với lập trình

Thường thì việc học lập trình khá là khó khăn cho người mới bắt đầu. Không chỉ bởi vì nó có cú pháp xa lạ, mà nó có thể cần một khoảng thời gian bạn mới có thể thấm được. Đối với hầu hết mọi người, đó là một trải nghiệm dễ gây nản lòng.
Tin tốt đó là lập trình Arduino không khó lắm. Nó không quá dễ dàng, nhưng chắc chắn dễ hơn so với việc thử lập trình ra ứng dụng di động hoặc video game đầu tiên của bạn. Thật vậy, Arduino có thể là một cách học lập trình mà không bị căng thẳng.
Học lập trình Arduino trực tuyến tốt nhất
Tất nhiên, nó không hoàn hảo. Thứ nhất, vì lập trình Arduino không khó nên bạn rất dễ viết ra những phần code cẩu thả, tạo ra những thói quen phát triển tồi, và chẳng bao giờ hiểu được phần code đó thực sự có ý nghĩa gì. Thứ hai, nó tương đối cơ bản, vì vậy bạn có thể sẽ không học được những kỹ thuật lập trình nâng cao cùng với nó.
Nhưng để nắm bắt những kiến thức lập trình cơ bản, thì Arduino là rất tuyệt vời. Nếu bạn nghĩ mình đã quá già hoặc quá "thiếu kỹ năng về kỹ thuật" để bắt đầu, thì hãy nghĩ lại. Không bao giờ là quá muộn để bắt đầu học lập trình cả!
Học lập trình Arduino trực tuyến tốt nhất
Nếu ý tưởng lập trình khiến bạn sợ hãi, thì có những ngôn ngữ khác tương thích Arduino mà bạn có thể học bên cạnh ngôn ngữ chính thức. Ví dụ, Scratch 4 Arduino là một thay thế trực quan và dễ hiểu hơn cho người mới bắt đầu. Bạn sẽ học các khái niệm về lập trình mà không phải vất vả với cú pháp.
Sau khi bạn đã vọc vậy với code Arduino một chút, bạn có thể nhận ra rằng mình thực sự yêu thích nó. Điều đó thật tuyệt vời! Chúng tôi khuyến khích bạn nên theo đuổi và xem liệu nó sẽ đưa bạn đến đâu.

3. Nó cũng là một cách tuyệt vời để tiếp xúc với điện tử

Khi lần đầu tiên tiếp xúc với Arduino, tôi không có nhiều kiến thức về các linh kiện điện tử hoặc các mạch. Tôi đã quên tất cả mọi thứ mình học được ở trường và cảm thấy một chút khó khăn khi vọc vậy với bộ vi điều khiển này. Một cảm giác khá choáng ngợp và hồi hộp.
Nhưng tôi nhanh chóng nhận ra rằng nó cũng không đến nỗi phức tạp. Vâng, bạn sẽ cần phải học các nguyên tắc cơ bản của các mạch nếu bạn muốn hiểu những gì mình đang làm, nhưng có hàng tấn tài nguyên miễn phí trên Internet để bạn tìm hiểu về điều đó.
YouTube là một nguồn tài nguyên đặc biệt tốt. Ở đó bạn có thể tìm thấy hàng trăm video liên quan đến Arduino, chẳng hạn như cái này:
Khi bạn vọc vậy với một Arduino, bạn sẽ có được kỹ năng với tất cả các loại linh kiện điện tử tùy thuộc vào loại dự án bạn theo đuổi. Nếu bạn chưa bao giờ nối dây điện, sử dụng breadboard, hoặc mỏ hàn, thì đây là một cách an toàn và thú vị để tìm hiểu.
Không chỉ có vậy, mà bạn sẽ được vọc vậy với rất nhiều linh kiện điện tử thú vị nữa. Ít nhất, hầu hết các bộ Arduino starter kit đều đi kèm với các đèn LED, điện trở, tụ điện, gia tốc, động cơ, nút bấm, màn hình, và nhiều hơn nữa. Bạn sẽ cảm thấy như mình giống một đứa trẻ với những miếng ghép Lego một lần nữa.
Nhưng trên hết, khi bạn có được sự tự tin với các mạch và các linh kiện, bạn có thể sẽ khai phá ra một khả năng sáng tạo tiềm ẩn trong con người bạn mà trước đó bạn không nghĩ là nó có tồn tại. Đó là một cách tuyệt vời để thể hiện sự sáng tạo.

4. Nó là một thú chơi tao nhã và ít tốn kém

Một trong những điểm thuận lợi lớn nhất của Arduino là rất dễ dàng là để bắt đầu mà không cần đầu tư quá nhiều tiền. Một bộ starter kit tốt có thể tiêu tốn của bạn khoảng từ $40 đô-la cho đến $100 đô-la, nhưng hầu hết là ở giữa khoảng đó.
Học lập trình Arduino trực tuyến tốt nhất
Nếu so sánh nó với những sở thích sáng tạo khác như hội họa, nấu ăn, làm vườn, hay nhiếp ảnh, nơi bạn có thể dễ dàng chi tiêu hàng trăm đô-la chỉ để có được những thiết bị cần thiết để bắt đầu. Thì việc chơi Arduino cũng không đến nỗi nào phải không bạn?
Thậm chí tốt hơn. Nếu bạn sẵn sàng để mua linh kiện từ Trung Quốc và đợi vài tuần để nhận hàng bao gồm rất nhiều linh kiện - dây nhảy, đèn LED, nút bấm, hoặc bất cứ thứ gì khác - với giá chỉ vài đô-la.
Học lập trình Arduino trực tuyến tốt nhất
Thậm chí bạn có thể có được Arduino rẻ hơn bằng cách mua hàng nhái. Không có điều gì sai trái với việc đó cả! Thiết kế phần cứng của Arduino là mã nguồn mở, và điều đó có nghĩa là bạn có thể mua các sản phẩm Arduino "nhái" từ Trung Quốc với giá ít hơn $3 đô-la.
Những bản Arduino "nhái" này là tuyệt vời cho việc thực hiện các dự án lâu dài - những nơi mà bạn sẽ không thể tháo dỡ Arduino và các thành phần của nó để tái sử dụng. Với mức giá rẻ như vậy, bạn có thể thực hiện nhiều dự án mình muốn mà không cần phải lo lắng rằng mình sẽ bị phá sản.

Làm thế nào để bắt đầu với Arduino

Có phải bạn đang muốn thử vọc vậy nó cho biết? Hãy tìm mua một bộ Arduino starter kit, nó sẽ giúp bạn bắt đầu với một Arduino và một số linh kiện hữu ích khác.
Cuộc sống là không có giới bạn, bởi vậy bạn hãy thử khám phá nhé. Chúc bạn may mắn và vui vẻ!
Bạn đã từng vọc vậy với một Arduino trước đây? Nếu bạn là một chuyên gia Arduino, thì bạn có lời khuyên nào cho người mới bắt đầu? Hãy chia sẻ với chúng tôi trong phần bình luận phía dưới nhé!
Thực hành Arduino #1: Lập Trình Điều Khiển Đèn LED Với Arduino

Thực hành Arduino #1: Lập Trình Điều Khiển Đèn LED Với Arduino

Đèn LED (Light-Emmiting Diode) hay còn gọi đi-ốt phát sáng là một linh kiện được sử dụng rất phổ biến bởi vì giá thành rẻ và cách sử dụng đơn giản. Với những bạn mới tiếp cận Arduino, mắc đèn LED đúng cách và làm chúng phát sáng có thể xem như một trong những thao tác cơ bản.

Giới thiệu

Đèn LED (Light-Emmiting Diode) hay còn gọi đi-ốt phát sáng là một linh kiện được sử dụng rất phổ biến bởi vì giá thành rẻ và cách sử dụng đơn giản. Đèn LED ngoài dạng thông thường - các đèn LED riêng lẻ, mỗi đèn phát sáng một màu xác định - còn có rất nhiều biến thể của nó. Có thể kể đến một số loại như: LED dây, LED 7 đoạn, ma trận LED .... Trong giới hạn bài viết này, ta sẽ cùng tìm hiểu cấu tạo của một đèn LED thông thường, cách sử dụng và các lưu ý cần thiết trước khi nối đèn LED với thiết bị.

Tiền đề bài viết

Bài viết nằm trong chương trình Tự Học Arduino.

Đối tượng hướng đến

Chương trình này hướng đến các bạn ĐANG LÀM QUEN với việc lập trình Arduino.
Bạn đọc có thể tham khảo các bài viết khác về Arduino trong Chuyên Mục Arduino.

Cấu tạo đèn LED

ss_1
Không như điện trở, đèn LED là một linh kiện điện tử có phân cực - trong đó anode là cực dương (+) và cathode (-) là cực âm. Và người ta quy định rằng chân dài hơn của đèn LED là cực dương (+) và chân ngắn hơn là cực âm (-).
ss_2
Trong trường hợp 2 chân bằng nhau, ta có thể xem ở bên trong đèn. Đầu nhỏ (bên trái của hình trên) chính là cực dương và đầu lớn hơn là cực âm của đèn. Vì vậy, khi nối đèn LED vào mạch, ta cần phải nối chính các các cực tương ứng.
Ngoài ra, mỗi loại đèn LED còn hoạt động ở một hiệu điện thế khác nhau. Thông thường, với loại đèn LED siêu sáng thì hiệu điện thế hoạt động phổ biến của chúng nằm trong dải từ 1.7V đến 3.3V. Mà theo lý thuyết, mạch Arduino sẽ cấp nguồn ra ở mức hiệu điện thế là 5V. Do đó, ta phải mắc thêm một điện trở để giảm hiệu điện thế xuống nhắm tránh gây hư hỏng linh kiện.
Giả định đèn LED của ta chịu được hiệu điện thế tối đa là 1.7V, trở kháng của điện trở mắc vào được tính theo công thức sau:
R = (Vs − Vf) ÷ I
Trong đó
  • R: trở kháng của điện trở mắc vào
  • Vs (supply voltage): hiệu điện thế nguồn cấp cho đèn LED, cũng chính là nguồn cấp từ Arduino - 5V
  • Vf (forward voltage): hiệu điện thế mà đèn LED cần sử dụng
  • I: cường độ dòng điện qua đèn LED - với Arduino sẽ là 10mA.
Dựa theo công thức trên, ta có thể dễ dàng tính ra được trở kháng của điện trở trong trường hợp này là 330 Ω. Tuy nhiên, đây là ngưỡng mà đèn LED của chúng ta có thể chịu được. Vì lẽ đó, để an toàn cho mạch, ta nên sử dụng một điện trở lớn hơn, trong trường hợp này ở mức 560 Ω là hợp lý.
Trong lược đồ thiết kế mạch, đèn LED được biểu diễn bằng ký hiệu:
ss_3

Sử dụng đèn LED

Phần này ta sẽ tiến hành mắc đèn LED vào mạch. Các linh kiện cần có bao gồm:
  • 1 x Arduino Uno R3
  • 1 x LED siêu sáng bất kì
  • 1 x Điện trở 560 Ω
  • 1 x Breadboard
  • Dây cắm các loại

Nối mạch

Với các linh kiện này, ta nối mạch theo sơ đồ như sau:
ss_4

Lập trình điều khiển

Và ta mở Arduino IDE lên, nạp đoạn code có nội dung như sau:
  1. void setup() {
  2. pinMode(7, OUTPUT);
  3. }
  4.  
  5. void loop() {
  6. digitalWrite(7, HIGH);
  7. delay(1000);
  8. digitalWrite(7, LOW);
  9. delay(1000);
  10. }
Đoạn code trên bao gồm 2 hàm setup() - chạy một lần khi cấp điện cho Arduino và hàm loop() - được gọi liên tục lặp đi lặp lại trong suốt thời gian hoạt động của Arduino.

Hàm setup()

Dòng 2: chỉ định cho Arduino biết ta sẽ xuất sử dụng pin 7 để xuất tín hiệu điện

Hàm loop()

Dòng 6: yêu cầu Arduino xuất tín hiệu điện - tương ứng với bật đèn LED.
Dòng 9 - 11: Arduino sẽ dừng lại chờ trong thời gian 1000ms - tương ứng với 1 giây.
Dòng 10: yêu cầu Arduino ngắt tín hiệu điện - tương ứng với tắt đèn LED.
Cuối cùng, ta nạp code lên Arduino thông qua IDE, sử dụng menu Sketch > Upload (Ctrl + U) hay icon tại giao diện.



ss_5
Lập trình C trên Arduino

Lập trình C trên Arduino

Tổng quan về C trên Arduino


Cấu trúc

Giá trị

Hàm và thủ tục

Cấu trúc điều khiển

Cú pháp mở rộng

Toán tử số học

  • = (phép gán)
  • + (phép cộng)
  • - (phép trừ)
  • * (phép nhân)
  • / (phép chia)
  • % (phép chia lấy dư)

Toán tử so sánh

  • == (so sánh bằng)
  • != (khác bằng)
  • > (lớn hơn)
  • < (bé hơn)
  • >= (lớn hơn hoặc bằng)
  • <= (bé hơn hoặc bằng)

Toán tử logic

  • && (và)
  • || (hoặc)
  • ! (phủ định)
  • ^ (loại trừ)

Phép toán hợp nhất

  • ++ (cộng thêm 1 đơn vị)
  • -- (trừ đi 1 đơn vị)
  • += (phép rút gọn của phép cộng)
  • -= (phép rút gọn của phép trừ)
  • *= (phép rút gọn của phép nhân)
  • /= (phép rút gọn của phép chia)

Hằng số

Kiểu dữ liệu

Chuyển đổi kiểu dữ liệu

Phạm vi của biến và phân loại

Hàm hỗ trợ

Nhập xuất Digital (Digital I/O)

Nhập xuất Analog (Analog I/O)

Hàm thời gian

Hàm toán học

Hàm lượng giác

Sinh số ngẫu nhiên

Nhập xuất nâng cao (Advanced I/O)

Bits và Bytes

Ngắt (interrupt)

Giao tiếp


Lập trình Arduino với Visual Studio

Lập trình Arduino với Visual Studio

Lập trình Arduino với Visual Studio

Trong bài viết này, mình sẽ giới thiệu với bạn cách lập trình bo mạch Arduino sử dụng Visual Studio IDE để viết và biên dịch code.
Để lập trình Arduino trên VS, bạn hãy download và cài đặt 1 extension có tên gọi Arduino IDE for Visual Studio được phát triển bởi Visual Micro, và extension này hoàn toàn MIỄN PHÍ, và có hỗ trợ cho cả phiên bản Community cũng MIỄN PHÍ của Visual Studio (trừ phiên bản Visual Studio Express).
arduino_vs2015_01
Tiếp theo, bạn vào trang chủ của Arduino và tải về phiên bản mới nhất, trong bài viết này thì phiên bản hiện tại là 1.6.5, và cài đặt vào máy của bạn.
arduino_vs2015_03
arduino_vs2015_02
Tóm lại, yêu cầu môi trường phát triển cần phải có đó là:
  1. Visual Studio (bản Community trở lên, không hỗ trợ bản Express) và đã hỗ trợ C++
  2. Arduino
  3. Arduino IDE for Visual Studio extension
Cấu hình Visual Micro
Sau khi hoàn tất cài đặt các phần trên, chúng ta sẽ chuyển sang phần cấu hình cho Visual Micro trong Visual Studio. Bạn mở VS lên, một hộp thoại sẽ hiện lên yêu cầu bạn cấu hình Arduino với Visual Micro.
arduino_vs2015_04
  1. Chọn phiên bản Arduino tương ứng với phiên bản Arduino IDE mà bạn đã cài đặt ở bước trên, trong bài viết này là 1.6
  2. Xác định đường dẫn đến Arduino IDE đã cài đặt, thường thì Visual Micro sẽ tự động tìm và xác định trước nếu bạn đã cài Arduino IDE trước khi thực hiện bước cấu hình này.
  3. Tính năng nâng cao tùy chọn, ở bước này bạn không cần phải xác định trước ở đây. Theo đề xuất thì mục này bạn nên để trống.
  4. Tính năng nâng cao tùy chọn, ở bước này bạn không cần phải xác định trước ở đây.
  5. Nếu bạn chưa tải về và cài đặt Arduino IDE thì bạn click vào nút này để thực hiện việc tải về và cài đặt Arduino IDE.
Bước cấu hình đã hoàn tất, bạn sẽ được tự động dẫn vào Visual Studio và bạn sẽ thấy ngay thanh tác vụ phục vụ cho lập trình Arduino xuất hiện trong Visual Studio.
arduino_vs2015_05
Bạn có thể thực hiện cấu hình lại bằng cách chọn Configuration Manager.
arduino_vs2015_06
Tạo project và viết chương trình cho Arduino
Bây giờ chúng ta bất đầu việc tạo project Arduino với Visual Micro trong Visual Studio. Từ thanh menu, bạn chọn File -> New -> Project. Một hộp thoại sẽ hiện lên để bạn chọn loại project, trong mục Visual C++, bạn sẽ thấy Visual Micro template, bạn chọn Bank Project và đặt tên project để bắt đầu lập trình.
arduino_vs2015_07
Cấu trúc của project sau khi được tạo.
arduino_vs2015_08
Nội dung của tập tin MyFirstSketch.ino
arduino_vs2015_09
Chọn mẫu bo mạch Arduino
Bạn chọn mẫu bo mạch Arduino mà bạn muốn viết chương trình và deploy bằng cách click vào ô chọn bo mạch và chọn trong danh sách các bo mạch được hỗ trợ. Trong bài viết và demo thực tế này, mình chọn mẫu bo mạch Uno.
arduino_vs2015_10
Sau khi chọn loại bo mạch, bạn tiến hành kết nối bo mạch với máy tính qua 1 trong các cổng kết nối mà bo mạch hỗ trợ. Trong demo này, mình kết nối Uno với máy tính thông qua cổng USB COM4.
arduino_vs2015_11
Biên dịch và tải chương trình vào bo mạch
arduino_vs2015_12
Trong ô Ouput ở bên dưới của Visual Studio bạn sẽ thấy trạng thái cũng như thông tin của quá trình Build project.
arduino_vs2015_13
Chương trình đầu tiên
Ở phần này mình sẽ thực hiện viết 1 chương trình đơn giản và tải lên bo mạch UNO và chạy thực tế.
Chương trình minh họa sẽ thực hiện thao tác bật – tắt 1 chiếc đèn LED. Bo mạch sẽ được thiết kế đơn giản như sau

Sơ đồ hóa

Mã nguồn chương trình như sau
arduino_vs2015_14
Đầu tiên là khai báo pin đầu ra ở vị trí pin 13.
1
pinmode(13, OUTPUT);
Trong hàm loop, thực hiện việc bật đèn LED lên
1
digitalWrite(13, HIGH);
Chờ 1 giây và sau đó thực hiện việc tắt đèn LED đi
1
degitalWrite(13, LOW);
Chờ 1 giây và thực hiện lặp lại như trên.
Bây giờ bạn thực hiện biên dịch code và tải chương trình lên bo mạch bằng cách bấm tổ hợp phím Ctrl + F5. Ở dưới ô Output, bạn sẽ thấy thông tin biên dịch và kết quả.
arduino_vs2015_15
Và kết quả triển khai thực tế trên bo mạch.


Hurrah! Vậy là chương trình đã chạy thành công trên bo mạch Arduino UNO. Hi vọng qua bài viết này các bạn nắm được cách tạo, viết chương trình và tải chương trình chạy thực tế trên bo mạch Arduino, từ đó có thể phát triển các ứng dụng hay với Arduino🙂


PS: Lưu trữ để tham khảo
Đào tạo Arduino của Bách Khoa Aptecth

Đào tạo Arduino của Bách Khoa Aptecth

KHOÁ HỌC ARDUINO


TỔNG QUAN VỀ KHÓA HỌC

  • Internet of Things có thể thay đổi hoàn toàn cách sống của con người trong tương lai không xa. Khi mọi vật đã được "Internet hóa" chúng ta có thể điều khiển chúng từ bất kỳ nơi nào, không bị giới hạn về mặt không gian và thời gian chỉ cần một thiết bị thông minh có kết nối Internet.
  • Internet of Things là xu hướng công nghệ trong hiện tại và tương lai.
  • Giảng viên khóa học Arduino là chuyên gia có nhiều năm kinh nghiệm thiết kế mạch và lập trình điều khiển.
  • Phòng lab trang bị đầy đủ các thiết bị để học viên thực hành, ngoài ra trung tâm hỗ trợ các bạn tự thực hành không hạn chế.

MỤC TIÊU KHÓA HỌC

  • Hướng dẫn lập trình điều khiển mạch điện tử Internet of Things - Arduino từ căn bản đến nâng cao.
  • Tự tay thiết kế và làm ra các sản phẩm điện tử ứng dụng, tự thiết kế kit Arduino.
  • Tạo ra sản phẩm Internet of Things - Arduino kết hợp phần cứng và phần mềm để áp dụng thực tế.

ĐỐI TƯỢNG ĐÀO TẠO

  • Sinh viên chuyên ngành Điện tử viễn thông, Cơ điện tử, tự động hóa, Điện, Cơ khí, CNTT.
  • Những người tự học, tự làm các ứng dụng, thiết bị với Arduino.
  • Các em học sinh cấp 2, cấp 3 có kiến thức về lập trình (Pascal), tham gia các kỳ thi sáng tạo phần cứng.

KHAI GIẢNG & THỜI LƯỢNG KHÓA HỌC

  • Thời lượng : 1,5 tháng, mỗi tuần 02 buổi (3 giờ / buổi)
  • Thời gian học: Từ 18h30 đến 21h30.

HỌC PHÍ VÀ ƯU ĐÃI

  • Học phí toàn khóa : 2.800.000 VNĐ
  • Đăng ký trước ngày khai giảng 05 ngày : giảm 10%

NỘI DUNG CHƯƠNG TRÌNH HỌC

  1. Tổng quan về lập trình điều khiển thiết bị Arduino
  2. Tìm hiểu và thực hành điều khiển đèn LED
  3. Tìm hiểu và thực hành điều khiển cảm biến: ánh sáng, nhiệt độ, độ ẩm, âm thanh, khoảng cách, ...
  4. Tìm hiểu và thực hành điều khiển màn hình LCD, TFT cảm ứng
  5. Tìm hiểu và thực hành điều khiển đèn LED ma trận
  6. Tìm hiểu và thực hành điều khiển động cơ: Direct Motor, Servo Motor, Stepper Motor
  7. Tìm hiểu và thực hành điều khiển kết nối mạng, web server
  8. Tìm hiểu và thực hành điều khiển kết nối không dây (wireless), bluetooth
  9. Tìm hiểu và thực hành điều khiển đọc, ghi thẻ nhớ SD Card
  10. Tìm hiểu và thực hành điều khiển nâng cao.

7. ĐĂNG KÝ THÔNG TIN ĐỂ ĐƯỢC TƯ VẤN VÀ HỖ TRỢ







8. LIÊN HỆ

  • Điện thoại : 0511 3 779 779 để được tư vấn trực tiếp
  • Địa chỉ : 38 Yên Bái, Q. Hải Châu, TP. Đà Nẵng.
Đôi nét Cơ bản về Arduino

Đôi nét Cơ bản về Arduino

  • Có thể bạn đã quen lập trình trên PC, với những ngôn ngữ như C, C++, C#, Java, Python, Ruby...
  • Nhưng bạn có biết là phần mềm trên PC chỉ chiếm khoảng 10% sản lượng phần mềm trên thị trường. 90% còn lại là code điều khiển tivi, máy giặt, điều hòa, tủ lạnh... tóm lại là tất cả các thiết bị điện tử xung quanh bạn. Đây cũng là một mảng theo tôi là khá thú vị. Lập trình theo hướng này được gọi là embedded computing, hay physical computing, tức là lập trình để con người tương tác với các thiết bị thực. 
  •  Để người thiết kế có thể nhanh chóng đưa ra được mẫu thể hiện ý tưởng của mình, rất cần phải có những platform để dễ dàng prototyping. Và một trong những platform đang được sử dụng rất nhiều trong prototyping là Arduino.

Vậy Arduino là gì và vì sao nó được sử dụng rộng rãi như vậy? 

  •  Arduino là một bo mạch xử lý được dùng để lập trình tương tác với các thiết bị phần cứng như cảm biến, động cơ,... 
  • Điểm hấp dẫn ở Arduino với anh em lập trình là ngôn ngữ cực kì dễ học (giống C/C++), các ngoại vi trên bo mạch đều đã được chuẩn hóa, nên không cần biết nhiều về điện tử, chúng ta cũng có thể lập trình được những ứng dụng thú vị. 
  • Thêm nữa, vì Arduino là một platform đã được chuẩn hóa, nên đã có rất nhiều các bo mạch mở rộng (gọi là shield) để cắm chồng lên bo mạch Arduino, có thể hình dung nôm na là "library" của các ngôn ngữ lập trình. Ví dụ, muốn kết nối Internet thì có Ethernet shield, muốn điều khiển động cơ thì có Motor shield, muốn kết nối nhận tin nhắn thì có GSM shield,... 
  • Rất đơn giản, và ta chỉ phải tập trung vào việc "lắp ghép" các thành phần này và sáng tạo ra các ứng dụng cần thiết :)

Để lập trình Arduino cần những gì?

  • Như vậy, bạn đã biết là tuy là một bo mạch nhỏ như thế, Arduino có thể dùng vào rất nhiều ứng dụng thú vị khác nhau. Vậy để phát triển ứng dụng dựa trên Arduino, ta cần những gì?
  • Rất đơn giản, bạn chỉ cần IDE phát triển (download ở đây), một dây kết nối USB loại A-B, và một bo mạch Arduino là bạn có thể bắt đầu được rồi.
  • Ngôn ngữ lập trình của Arduino chính là C/C++, nhưng 
  •  
  • So với lập trình lập trình trực tiếp với vi điều khiển, lập trình với Arduino đơn giản hơn nhiều vì bạn chỉ phải giao tiếp với phần cứng thông qua các thư viện, có thể xem như các lớp C++ wrapper lên các giao tiếp với phần cứng. Trên website, có khá nhiều các library viết sẵn để điều khiển ngoại vi: LCD, sensor, motor... nên việc bạn cần làm chỉ là kết hợp chúng với nhau để tạo ứng dụng cho riêng bạn.

Cận cảnh phần cứng của Arduino

alt text
Hình trên là cận cảnh con Arduino Uno. Đối với chúng ta lập trình cho Arduino thì trước tiên quan tâm những thành phần được đánh số ở trên:
  1. Cổng USB (loại B): đây là cổng giao tiếp để ta upload code từ PC lên vi điểu khiển. Đồng thời nó cũng là giao tiếp serial để truyền dữ liệu giữa vi điểu khiển với máy tính.
  2. Jack nguồn: để chạy Arduino thì có thể lấy nguồn từ cổng USB ở trên, nhưng không phải lúc nào cũng có thể cắm với máy tính được. Lúc đó, ta cần một nguồn 9V đến 12V.
  3. Hàng Header: đánh số từ 0 đến 12 là hàng digital pin, nhận vào hoặc xuất ra các tín hiệu số. Ngoài ra có một pin đất (GND) và pin điện áp tham chiếu (AREF).
  4. Hàng header thứ hai: chủ yếu liên quan đến điện áp đất, nguồn.
  5. Hàng header thứ ba: các chân để nhận vào hoặc xuất ra các tín hiệu analog. Ví dụ như đọc thông tin của các thiết bị cảm biến.
  6. Vi điều khiển AVR: đây là bộ xử lý trung tâm của toàn bo mạch. Với mỗi mẫu Arduino khác nhau thì con chip này khác nhau. Ở con Arduino Uno này thì sử dụng ATMega328.

"Hello World" trên nền Arduino

Với việc học bất cứ một ngôn ngữ nào, thường người ta hay bắt đầu bằng ví dụ "Hello World", tức là bắt máy tính bắn ra màn hình dòng chữ "Hello, World!". Với các bạn có kinh nghiệm lập trình, việc này có lẽ quá dễ dàng, chỉ vài dòng code là được, ngôn ngữ nào cũng vậy (C, C++, Java, Python, Ruby...).
Nhưng với lập trình trên Arduino thì sao? Việc bắt cái bo mạch Arduino đưa ra một thông tin báo hiệu nào đó cho ta là nó đang chạy, phải thực hiện thế nào? Nói cách khác, output của Arduino sẽ là như thế nào đây:
  1. Nháy LED
  2. Kết nối với PC qua đường UART, bắn lên dòng chữ Hello World cho ta ngắm.
  3. Kết nối với một cái màn LCD, cũng bắt nó bắn lên Hello World cho ta nhìn.
... vài cách nữa
Trong bài mở đầu này, tôi chọn cách dễ nhất là Nháy LED. Nháy LED cũng được coi là Hello World của lập trình nhúng, với mỗi con chip mới, điều đầu tiên nên làm là nháy LED, để kiểm tra xem mình đã kiểm soát được đầu vào đầu ra cho con chip chưa :)
Đầu tiên là đoạn code nháy LED:
{% codeblock blink_series.c %}
/* 
  Multiple blink 
  Turns on and off a LED series, using Arduino pin 4,5,6,7

  written by Viet Nguyen
 */

 int led;

 //the setup routine runs once when you reset the Arduino
 void setup()
 {
   //initialize the digital pin as an output
   for(led = 4; led < 8; led ++)
   {
     pinMode(led, OUTPUT); //init the digital pin as output.
   }
 }

 // the loop routine runs over and over again
 void loop()
 {
   for(led = 4; led < 8; led++)
   {
     digitalWrite(led, HIGH);  //turn the LED on (HIGH is the voltage level)
     delay(100);      //100 ms
     digitalWrite(led, LOW);  //turn the LED off by making the volage LOW
     delay(100);      //100 ms
   }
 }
Bạn thấy đó, đoạn code trên rất đơn giản và mang phong cách giống C/C++. Một chương trình như trên được gọi là sketch, sẽ được upload lên bo mạch Arduino qua cổng USB.
Phân tích chương trình: có 2 method quan trọng nhất là setup() và loop().
  • setup() làm nhiệm vụ khởi tạo mode cho các ngoại vi của Arduino. Hàm này sẽ được chạy một lần khi bo mạch Arduino được reset. Ở chương trình này, setup() chỉ làm nhiệm vụ đặt các chân 4,5,6,7 của Arduino sang mode output.
  • loop() là chương trình chính của Arduino. Đoạn code trong loop() sẽ được Arduino chạy vô hạn. Trong chương trình này, có hàm digitalWrite() để đặt các chân (pin) ở mức điện áp cao (HIGH) hay thấp (LOW). Hàm tiếp theo là delay(), nhận đối số là một số nguyên, thẻ hiện số mili giây ta muốn chương trình tạm ngưng.
Đó là tất cả về phần code chạy, còn nối dây như thế nào? Dưới đây là sơ đồ nối dây:
alt text
Giải thích một chút, đoạn code trên sẽ lần lượt xuất điện áp 5V ra các pin 4,5,6,7 rồi tắt. Để kiểm nghiệm, nối LED với một con trở giữa các pin đó với đất, ta sẽ thấy các đèn LED bật tắt nhịp nhàng

Kết luận

Bài này đã giới thiệu những kiến thức mở đầu về Arduino, cách lập trình trên platform này và demo bài "Hello World" của Arduino. Với cộng đồng chia sẻ rất lớn, nhiều ứng dụng, Arduino rất đáng để học, cũng là một cách để bạn tiếp cận dễ dàng hơn với electronics

PS: Bài viết tham khảo, được chép lại trên trang cá nhân, mục đích tham khảo sau này