Crazy about Arduino: Your End-to-End Workshop - Level 2
4.3 (10 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,136 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Crazy about Arduino: Your End-to-End Workshop - Level 2 to your Wishlist.

Add to Wishlist

Crazy about Arduino: Your End-to-End Workshop - Level 2

Learn to build a complete Arduino project using: Keypad, LCD, Ultrasonic sensor, LDR sensor and a Buzzer
4.3 (10 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,136 students enrolled
Created by Idan Gabrieli
Last updated 1/2017
English
Current price: $10 Original price: $100 Discount: 90% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 2.5 hours on-demand video
  • 1 Article
  • 12 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Get users input using Keypad
  • Display and visual information using LCD module
  • Measure distance using the ultrasonic sensor module
  • Measure light intensity
  • Generate Alarm Sound
  • Design circuits using the Fritzing tool
  • Develop more complex sketches using the Arduino IDE
  • Learn to use off-the-shelf Libraries
View Curriculum
Requirements
  • Basic electronics background (The Theory Behind Electronics - A Beginners Guide)
  • Basic Arduino framework (Crazy about Arduino - Level 1)
Description

LEVEL 2 

  • Do you like building “things” by yourself?
  • Are you looking for ways to easily combine software code and some hardware components?
  • Did you ever wondered how electronics devices are really working?
  • Do you have some creative ideas and you just looking for ways to easily prototype them ?

If the answer is “YES” for some of the questions above than you just landed in the right place!. Arduino is an amazing development and prototyping platform with endless possibilities for Do-It-Yourself Makers looking for ways to express their creative mind and technical capabilities. 

This course is LEVEL 2 as part of a larger comprehensive training program divided to levels that are all about Arduino and the eco-system around it. Each course covers specific group of subjects to let you develop and grow your skills in a step-by-step pace while enjoying the long journey.

Are you Ready to start being “Crazy” about Arduino....?  ;-)

Who is the target audience?
  • Anyone that is willing to get crazy about Arduino
  • Technology Innovators
  • Entrepreneurs
  • Electronics Makers
  • Students looking for ways to join the IoT wave
Students Who Viewed This Course Also Viewed
Curriculum For This Course
58 Lectures
02:34:08
+
Getting Started
5 Lectures 11:01

Welcome !

"Crazy about Arduino: Your End-to-End Workshop " is a new training program aiming to boost the innovation around the emerging opportunities coming with the wave of Internet Of Things, while using the Arduino development platform. 

The training program is divided to several courses\levels, where each course is aiming to teach group of subjects  related to Arduino in a fun and easy way. It is recommended to follow the program in the suggest sequence.

This course is Level 2 in the "Crazy about Arduino" training program.

Preview 01:36

Let's review some of my recommendations before we start our course.  

Before WE Start...
01:20

Arduino is an amazing easy to use development platform that help us to bridge the physical world with the digital world. In this chapter we will learn WHAT is Arduino and WHAT we can do with it 

Preview 04:07

What kind of applications we can build with Arduino ? well, there are really endless applications we can build with Arduino. Believe it or not, it is really limited by our imagination.... creative people around the world are constantly creating innovative projects with Arduino. 

Endless Applications for Makers !
01:12

We will need some specific free software tools and of course some small amount of hardware components.

Our Checklist
02:46
+
Step 1 - Matrix Keyboard
9 Lectures 37:45

The first step while building our project is to learn how to connect a simple keypad module, looking like a small keyboard. The ability to interact with users and get as input numerical numbers and several basic characters will help us to really take our Arduino projects into a new level of interaction !

Preview 01:47

The membrane-type 4x4 keypads are a nice low cost solution for many applications. They are quite thin and can be easily mounted if you plan to build some case to your project. This matrix keypad use a combination of four rows and four columns to provide a total of 16 push buttons, typically used as input to a micro-controller like we have in the Arduino board.  


The Matrix Keypad (4x4)
01:03

Each key is a simple push button, with one end connected to one row, and the other end connected to one column. Connecting the keypad to the Arduino is straightforward, each row and each column is connected to a dedicated digital pin on the Arduino, meaning the number of pins that are needed will be the sum of rows and columns. 


Wiring the Keypad
04:11

A word about history and what we have today with the concept of "Libraries" helping to abstract complex things. 

Long Time Ago…and Today !
02:21

The "Keypad" library allows the Arduino to read a matrix type keypad supporting multiple types of keypad size (3x4, 4x4) and customized key mapping configuration.  

The "Keypad" Library
03:54

Do you know\remember C++ ?

One of the main thing in object oriented programming, is the concept of class. A class is a template for a collection of functions and variables that are all kept together in one place, under the same roof because they share some common goal. We need to learn how to create Keypad instance from the Keypad class.

Creating Keypad Instance
05:53

Let's look on the actual hardware setup while connecting the keypad.

Hardware Setup - Keypad 4x4
08:54

We learned to read one key at a time, now we can read a complete numerical value or maybe a sequence of characters.

Project Demo
01:45

Let's see the sketch code used to operate the Keypad while printing the pressed keys in the computer serial port.

Code Review
07:57
+
Step 2 - Liquid Crystal Display (LCD)
10 Lectures 26:33

LCD is probably the most cost effective way to really extend the output in our projects. By adding an LCD we can easily display complex information like: sensor values, messages, timing information, settings, progress bars and more, directly on our project. Awesome!

Preview 02:27

LCD modules are used to display characters such as text and numbers. They can be purchased in various sizes, which are measured by the number of rows and columns of characters they can display. 

The LCD Module
00:57

Until now we learned how to connect many types of components using the Arduino analog and digital inputs/outputs terminals, and that’s is great!, but what about more complicated electronics components ? it seems we can expand the Arduino capabilities and start interfacing with a variety of additional external components using the I2C serial interface.

I2C Interface
03:14

To be able to connect our LCD to the Arduino we need some additional module that will be used as the mediator between the LCD and the Arduino, abstracting the interface between them. This module is called I2C LCD controller.

The I2C LCD Controller
02:22

We have three building blocks to be connected: Arduino , I2C controller and an LCD module.

Wiring the LCD
02:38

After connecting our I2C module to the LCD using the breadboard and the I2C to the Arduino, we are ready to start program our code. The library called “LiquidCrystal_I2C” will do all the hard job, we just need to learn how to use it.

The "LiquidCrystal_IC2" Library
03:10

We have two ways to connect the I2C controller and the  LCD module to each other: First option, is to solder the I2C controller directly to the LCD. Another option that I prefer is to solder a header pins to the LCD display and than use a breadboard to connect between them. 

Hardware Preparation
03:09

Let's look on the actual hardware setup while connecting the LCD.

Hardware Setup - LCD
02:30

The final goal in this section is to get text from the serial port and display that on our LCD. 

Project Demo
01:21

Let's see the sketch code used to operate the LCD while printing on the LCD, the pressed keys coming from the computer serial port.

Code Review
04:45
+
Step 3 - Ultrasonic Distance Sensor
9 Lectures 23:55

Ultrasonic sensor is  basically used to measure distance using high frequency sound waves. There are many interesting projects that are using such popular sensor for different applications. We will learn how this sensor works and then how to easily use it in our projects. 

Preview 01:13

Before jumping into the practical side, meaning how to use the ultrasonic distance sensor, it will be nice to understand some basic concept related to sound and the way it being used in so many applications to measure distance. 

What is a Sound Wave ?
05:47

The method for measuring distance with ultrasound is called echolocation. Echolocation is basically the use of sound waves and echoes to determine where objects are in space.

Ecolocation
01:11

Ultrasonic distance sensor uses sonar to determine distance to an object providing excellent non-contact range detection with high accuracy and stable readings in an easy-to-use package. The reading distance are from 2cm to 400 cm. The modules includes ultrasonic transmitters, receiver and some control circuit. 

The Ultrasonic Sensor HC-SR04
00:57

The sensor has 4 terminals: VCC connected to the 5v power, trig and echo connected to selected digital PINs and ground. No additional components are needed and we can use it without any special library. 


Wiring the Ultrasonic Sensor
02:31

The sensor emitting ultrasonic waves and when these waves come across an object, some of them get reflected back. These reflected waves get picked up by the sensor and it calculates how much time it took for the wave to return. 

How it is Working ?
02:42

Let's look on the actual hardware setup while connecting the Ultrasonic sensor and the threshold LED.

Hardware Setup - Ultrasonic Sensor and Threshold LED
02:43

Finally, like always we will test our new additional hardware and software being added in this section by using the serial port. 

Project Demo
01:24

Let's see the sketch code used to operate the sensor while printing the distance measurement in the computer serial port.

Code Review
05:27
+
Step 4 - LDR Sensor
7 Lectures 16:14

The photoresistor sensor is a simple low-cost analog sensor to measure ambient light level. It is also called light-dependent resistor, as the resistance decreases as the amount of light falling on it increases.

Introduction
01:11

What is light and specifically what it light intensity ?

What is Light ?
02:18

Photoresistors, also known as light dependent resistors (LDRs) or photocells, are low-cost variable resistors where the resistance changes depending on the amount of light hitting its surface. In dark environments the resistance is high; in light environments the resistance is lower.

The LDR Sensor
01:19

LDR is a non-polarized component like a regular fixed resistor so the direction is not important. We will connect the photoresistor with a 10Ko resistor to the Arduino 5v power, which will protects the Arduino from short circuits and ensures that at least some resistance is always present on the line.


Wiring the LDR Sensor
05:04

Let's look on the actual hardware setup while connecting the LDR sensor.

Hardware Setup - LDR Sensor
01:59

Demonstrating the LDR sensor in action !

Project Demo
01:13

Let's see the sketch code used to operate the sensor while printing the light measurement in the computer serial port.

Code Review
03:10
+
Step 5 - Buzzer Alarm
9 Lectures 18:31

There are all kind of applications that requires some basic sound capability, like a beep when a user pressing on something, or when specific sensor threshold is crossed and you would to run some short alarm sound and more

Introduction
01:15

Musical tone is steady periodic sound wave characterized by several properties.

What is a Musical Tone ?
02:14

Buzzers come in two varieties, active and passive. An active buzzer just outputs a single tone while a passive buzzer is similar to a loudspeaker and needs a wave signal to make it works.

Buzzer Types
01:37

The Buzzer alone connected directly to the Arduino, can't produce a loud sound. In that case we can use a combination of transistor and resistor to make more powerful. The good news it is already packed in a module called YL-44 !

Using the YL-44 Module
01:51

The module package include: Speaker  + Transistor + Resistor + Terminals

We have 3 leads:

•VCC -->  5v

•I/O  --> Digital PIN with PWM

•GND --> Ground

and we will need to apply an oscillating voltage to make a noise....

Wiring the Passive Buzzer Module
02:23

The Arduino IDE includes a built-in function for easily making sounds of arbitrary frequencies. The tone() function generates a square wave of the selected frequency on the selected output pin.

Let's learn how to use it !
The tone() function
03:47

Let's look on the actual hardware setup while connecting the Buzzer module. 

Hardware Setup - Buzzer
01:36

Now we will make a buzzer alarm sound !

Project Demo
00:33

Let's see the sketch code used to operate the Buzzer while using the tone() function.

Code Review
03:15
+
Step 6 - Our Final Project
5 Lectures 16:05

Now it is time to start mixing between the features that we got from all components and create a single system that actually doing something. The good news is that all the hardware setup is already ready, up and running and the only thing we need to do is to play and adjust our software !

Introduction
01:15

The first thing I recommend to do is to design the main program flow in high level. It is something useful to forget for a short while the long lines of code in our sketch and to focus on the expected system behavior.

Designing the Program Flow
02:09

In many applications it is useful and even critical to get some number or combination of characters as a security code.  In our project we already connected the keypad and LCD, so the only thing we need to do is to adjust and update the software code, so when the system is starting it will ask the user to enter a security code before letting the system to continue. 

Let’s see that code first and then the actual project. 

Security Lock Code
05:32

We learned to measure distance using the ultrasonic sensor and light intensity using the photoresistor. Now we would like to display that information on the LCD module.

Display Distance and Light Mode on LCD
04:08

When an object is crossing a specific distance (threshold)  we would like to use the buzzer module and when the light intensity dropped a specific light level we would like to use the LED indicator. 

Automatic Thresholds Indicators
03:01
+
Course Summary
4 Lectures 04:05

We almost at the finish line, thanks for watching so far, this course was designed to provide you more advance knowledge related to all kind of useful components that can be connected to the Arduino.

Almost at the Finish Line...
00:34

Let’s see in high level the flow of topics with a short summary per each one and also some recommendations for your next step moving forward ! 

What Did We Covered ?
01:53

Thanks for watching the second course in the "Crazy about Arduino" learning program, I hope you enjoyed it while learning one or two things along the way :-) 

Best regards and good luck !

What Next ? Level 3 !
01:34

The following link is a discounted coupon codes for Level 3:

Level-3


Bonus Lecture: Crazy about Arduino - Level 3
00:04
About the Instructor
Idan Gabrieli
4.1 Average rating
214 Reviews
8,478 Students
7 Courses
Senior Sales Engineer and Digital Entrepreneur (BS.c, MBA)

Staying Relevant

Learning and developing new skills is a critical factor for staying relevant in today’s fast-changing markets. This is true to individuals, small businesses, companies and even for countries. 

We can use those new skills to improve our daily work, increase our income, start a new job or maybe a small business and in general, innovate in amazing new directions. Nothing should stop you from setting and achieving new goals.

Started as an Engineer...

I was on born in a small “startup nation” called Israel, learned engineering and got also an MBA. For the last 10 years I am working in the software industry in several leading worldwide hi-tech companies, helping to discover business opportunities, present and demonstrate products, promote constant technology innovation and tailor complex solutions for customers. It is a challenging full time role but I like it :-)

Professional Instructor at Udemy

For the past 4 years I am teaching students all over the world to expand their horizon by learning new skills based on my knowledge and experience. I truly believe that online learning platforms are here to stay as they opened an amazing opportunities for almost everyone to learn from others and in addition share their knowledge and experience. 

I am Here :-)

If you need any help or you have some question, please feel comfortable to contact me for assistance before and after joining my courses.