industrial training report of embedded system and robotics

28
EMBEDDED SYSTEM AND ROBOTICS A Industrial training report Submitted in Partial Fulfillment of the Requirement of the Degree of BACHELOR OF TECHNOLOGY in ELECTRONICS AND COMMUNICATION ENGINEERING by PALLAVI BHARTI (REG NO.20130549) Under the guidance of MR.ROHAN SINGH Training head DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING 1

Upload: pallavi-bharti

Post on 27-Jan-2017

620 views

Category:

Engineering


107 download

TRANSCRIPT

Page 1: Industrial training report of embedded system and robotics

EMBEDDED SYSTEM AND ROBOTICS

A Industrial training report Submitted in Partial Fulfillment of the Requirement of the Degree

ofBACHELOR OF TECHNOLOGY

in

ELECTRONICS AND COMMUNICATION ENGINEERING

by

PALLAVI BHARTI

(REG NO.20130549)

Under the guidance of

MR.ROHAN SINGH

Training head

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERINGSIKKIM MANIPAL INSTITUTE OF TECHNOLOGYMAJITAR, EAST SIKKIM-737136, December 2016

1

Page 2: Industrial training report of embedded system and robotics

ACKNOWLEGEMENT

I am truly thankful to all the faculties who imparted the lectures on various subjects/topics and took us to the plant in a guided study visit along with detailed explaining about the plant and machinery. An Electronics student mainly focuses on practical applications of concepts learned projects like this one provide us with an ideal opportunity to do the same .I acknowledge the valuable inputs provided by Mr. ROHAN SINGH.

Last but not least, a big thanks to all my family members and friends, for timely cooperation and support extended to me all the way.

CONTENTS2

Page 3: Industrial training report of embedded system and robotics

Si.No. Content

1. Overview of Embedded Systems

2. Introduction to Atmega16 microcontroller

3. Analog to Digital converter

4. Timers in Atmega16

5. 7 segment Interfacing

6. LCD Interfacing

7. DC Motor interfacing

8. IR Sensor Interfacing

9. LM35 Interfacing

10. Matrix keypad interfacing

11. DTMF interfacing

12 RGB LED interfacing

13 Relay interfacing

14 Touch screen interfacing

15 RF interfacing

16 Accelerometer interfacing

1.EMBEDDED SYSTEM3

Page 4: Industrial training report of embedded system and robotics

INTRODUCTIONEmbedded system is a scaled down computer system which is designed toperform a specific task or operation. The whole system is embedded into an appliance. This reduces human effort to a great extent. A single chip contains both hardware and software.

Some important things to note about embedded systems:1. Once an embedded hardware is programmed for a certain task, it is used forever for the same task. Changing the firmware afterwards is not possible.2. Such systems are limited in computational resources like memory, CPU processing speed, I/O facilities but are still capable of performing the task given to them very efficiently.3. Embedded systems can also be having a reduced functionality version of operating system called RTOS (Real Time Operating System) for highly specialized applications.4. Interacts with physical elements in our environment, viz. controlling and driving a motor, sensing temperature, etc.

EMBEDDED SYSTEM IN DAILY LIFE

Digital Clock Traffic Light

DVD Player Smart Phones

4

Page 5: Industrial training report of embedded system and robotics

2.MICROCONTROLLERA Microcontroller is a programmable digital processor with necessary peripherals. Both microcontrollers and microprocessors are complex sequential digital circuits meant to carry out job according to the program / instructions.

ATMEGA16 MICROCONTROLLER: We will be working on Atmega16 microcontroller, which is a 40-pin IC and belongs to

the MegaAVR category of AVR family.

Some of the features of Atmega16 are:

16KB of Flash memory 1KB of SRAM 512 Bytes of EEPROM Available in 40-Pin DIP 8- Channel 10-bit ADC Two 8-bit Timers/Counters One 16-bit Timer/Counter 4 PWM Channels Serial USART Digital to AnalogComparator

PIN DIAGRAM

5

Page 6: Industrial training report of embedded system and robotics

I/O PORTSInput Output functions are set by Three Registers for each PORT.• DDRX > Sets whether a pin is Input or Output of PORTX.‐‐‐‐• PORTX > Sets the Output Value of PORTX.‐‐‐• PINX > Reads the Value of PORTX.‐‐‐‐‐ (Where X= A, B, C or D)

DDRX (Data Direction Register)Now to make a pin act as I/O we set its corresponding bit in its DDR register.• To make Input set bit 0• To make Output set bit 1

PORTX (PORTX Data Register) If a pin is set to be output, then by setting bit 1 we make output High that is +5V and

by setting bit 0, make output Low that is 0V. If a pin is set to be input, then by setting its corresponding bit in PORTX register will

make it asfollows, Set bit 0 > Tri Stated Set bit 1 > Pull Up.‐‐‐ ‐ ‐‐‐ PORTX > to set value of PORTX with a byte.‐‐‐‐ PORTX.y > to set value of yth pin of PORTX with a bit (works only with CVAVR).‐‐

PINX (Data Read Register)This register is used to read the value of a PORT. If a pin is set as input then corresponding bit on PIN register is,• 0 for Low Input that is V < 2.5V

6

Page 7: Industrial training report of embedded system and robotics

• 1 for High Input that is V > 2.5V (Ideally, but actually 0.8 V 2.8 V is error zone!)‐• PINX > Read complete value of PORTX as a byte.‐‐‐‐• PINX.y > Read yth pin of PORTX as a bit (works only with CVAVR‐‐ ).

SOFTWAREThe software which support this hardware and can communicate with micro controller using this circuit is- • AVR Studio 4

3. Analog to Digital Converters Microcontroller understands only digital language. To convert the analog output from the sensors to digital we need ADC. In AVR family of microcontroller we have inbuilt ADC on PORTA. Each

pin in PORTA has an ADC circuit connected behind it. Thus we have 8 channels of ADC.

The resolution of ADC output is 10 bit i.e. the output from the ADC is any number between 0 to 1023

ADC registers: The inbuilt ADC of AVR microcontroller have three register which are

used for configuring the ADC. They are: ADMUX: it is used for selecting the ADC pin to be used for

connecting the Analog sensors. It is also used for setting the reference value of the ADC.

ADSCRA: it is used for controlling the ADC e.g. when should it start the conversion? Should it repeat the conversion? Should interrupt be generated after the conversion is complete? Etc.

ADCH & ADCL: these are used for storing the ADC output values. Both the registers are 8 bit wide and we require 10 bits for storing the ADC value. Thus the two registers are used. The way of storing the ADC value is configured using ADSCRA.

ADMUX7

Page 8: Industrial training report of embedded system and robotics

ADLAR:-This bit is setting the manner, the ADC result will be stored in ADC data register.ADLAR = 0ADCH& ADCL

ADCSR

8

Page 9: Industrial training report of embedded system and robotics

4.Timers in ATMega16 In Atmega16, we have three timers:TIMER0 TIMER1 and TIMER2 Out of these, TIMER0 and TIMER2 are 8 bit timer, while TIMER1 is a 16

bit timer. All the timers have three unique registers and two common registers. TIMER1 has a special register, called ICR(Input Capture Register).It has

two channels(channel A and channel B). TIMER2 has a special register known as ASSR, which is used two

generate PWM using asynchronous clock.

Timer Registers

• Each timer has three registers. They are: TCCR(Timer Counter Control Register) TCNT(Timer Counter), OCR (Output Compare Register).

• Thus, three registers for TIMER0 are TCCR0, TCNT0 and OCR0. • Similarly for TIMER1 and TIMER2, we have TCCR1, TCNT1, OCR1 and

TCCR2, TCNT2 and OCR2.• The three timers have two common registers. They are:

TIMSK (Timer Interrupt Mask) TIFR (Timer Interrupt Flag Register

Register Function Description• TCCR (Timer Counter Control Register): It is used for configuring the

timer i.e. modes and pre scale factor.• TCNT: It stores the present value of the timer. It is used for monitoring

the status of the timer. After each incrementing in the timer value, this register compares its value with the OCR register value.

• OCR(Output Compare Register): It is used for setting the required duty Cycle

5. Seven Segment Display

9

Page 10: Industrial training report of embedded system and robotics

Interfacing• A seven-segment display can be used to display the decimal numbers 0-9 and

some alpha characters.

• A Seven-Segment Display (SSD) is simply a figure eight grouping of LEDs {include a decimal point (DP)}.

• Each Segment is labeled (a) to (g).

• SSDs are available in two configurations

• Common Cathode (all LED cathodes are connected)

• Common Anode (all LED anodes are connected)

Fig: Interfacing with atmega16 fig: 7Segment display

6. LCD INTERFACING • LCD’s are all around us so liquid crystal displays are very useful in these days.

• It is a kind of display that is made up of a special matter state formed using liquid and crystal both , it’s a forth state of matter

10

Page 11: Industrial training report of embedded system and robotics

• The most popular one is 16x2 LCD module. It has 2 rows & 16 columns.The intelligent displays are two types: Text Display Graphics Display

PIN DESCRIPTION

Figure 4.1: pin configuration for 16 X 2 LCD

8 data pins D7:D0

Bi-directional data/command pins. Alphanumeric characters are sent in ASCII format.

RS:  Register Select

RS = 0 -> Command Register is selected

RS = 1 -> Data Register is selected

R/W: Read or Write

0 -> Write, 1 -> Read

E: Enable (Latch data)

11

Page 12: Industrial training report of embedded system and robotics

Used to latch the data present on the data pins.A high-to-low edge is needed to latch the data. 

VEE: contrast control. VDD & VSS: Power supply

VDD= +5V

VSS=GND

7. DC MOTOR INTERFACING

• The simplest DC rotating machine consists of a single loop of wire rotating about a fixed axis. The magnetic field is supplied by the North and South poles of the magnet.

• Rotor is the rotating part.Stator is the stationary part.

• We can reverse the motor direction the simply by reversing the power supply connection of motor. It means motor is bipolar device.

Necessary Medium to Operate

• We are working on microcontroller and the maximum output current that it can provide is 20mA.

• But our motor works on 1Amp current so to remove this problem we will have to connect motor driver IC L293D in between the microcontroller and motor.

Pin Description

12

Page 13: Industrial training report of embedded system and robotics

Fig: L293D Fig: Interfacing with Atmega16

8. IR Sensor interfacing

There are two part of the sensors: 1. Emitter 2. Receiver

Emitterconverts the electrical current in the Infra-Red Radiation. Receiver receive the IR radiation when the radiation reflect back after

the collision from the obstacle and then this IR radiation is converted into electrical current.

Operating Modes:

Our IR sensor can work in two modes: Analog Mode: - In this the output is continuously changes depending

upon the reflections from the objects. Digital Mode: - In this the output is constant either high or low

depending upon reflections.

How to use?• Digital Mode:-In this mode you can directly connect the sensor to any

pin of the controller and can perform any task according to the condition you mentioned in program.

• Analog Mode:-In this mode sensor will give analog value so you have to use ADC because microcontroller works on digital

13

Page 14: Industrial training report of embedded system and robotics

9.LM35 INTERFACING

• LM35 is a precision IC temperature sensor with its output proportional to the temperature (in o C). The sensor circuitry is sealed and therefore it is not subjected to oxidation and other processes. With LM35, temperature can be measured more accurately than with a thermistor. It also possess low self-heating and does not cause more than 0.1 o C temperature rise in still air.   

• The operating temperature range is from -55°C to 150°C. The output voltage varies by 10mV in response to every o C rise/fall in ambient temperature, i.e., its scale factor is 0.01V/ oC.

Pin Diagram

14

Digital clockDVD playerTraffic Light

Page 15: Industrial training report of embedded system and robotics

Output

• Output of the temperature sensor is analog so we cannot measure it directly from the controller because it works on a digital logic so we have to initialize ADC of the controller.

• Give the output of analog sensor on PORTA

10. Interfacing matrix keypad• The matrices are actually an interface technique. It can be used to interface

inputs like the PC keyboard keys, but also to control multiple outputs like LEDs. According to this technique, the I/O are divided into two sections: the columns and the rows.

• It is basically a two dimensional array. We are connected switched in a fashion as shown in figure. This is 4x4 keypad matrix which is having two four pin connector. One connector is connected with PORTC and another is from PORTA. As there are only four pins so we can connect these pins from lower or higher pins of the MCU PORTs

15

Pin No Function Name

1 Supply voltage;

5V (+35V to -2V)

Vcc

2 Output voltage (+6V to -1V)

Output

3 Ground (0V) Ground

Page 16: Industrial training report of embedded system and robotics

CONNECTION OF KEYPAD-

Connect connectors from PORTs. Make one PORT as input and another as output (configuration of

DDR). Give ground to one connector’s pin using output configured

PORT and read the corresponding pin of input configured PORT.

11. DTMF Interfacing• The invention of this is attributed to Western Electric and first used by the Bell

System in commerce.

• DTMF signals are the superposition of 2 sine waves with different frequencies.

• It is a signaling Technology used for communicating between two far away devices.

• It uses frequency of speech signals.

16

Page 17: Industrial training report of embedded system and robotics

• Only 12 tones are used by our mobile communication out of the 16 combination that are possible.

• The DTMF is a popular signaling method between telephones and switching centers.

DTMF Tone Generation

• EXAMPLE:-Pressing the key 1 will result in a sound composed of both a 697 and a 1209 hertz (Hz) tone.

Decoding DTMF

• The CM-8870 is a full DTMF Receiver that integrates both band split filter and decoder functions into a single18-pin DIP or SOIC package.

17

Page 18: Industrial training report of embedded system and robotics

If I am pressing a key let say 1, then it will give the combination of Frequencies 1209 & 697, and this will directly be given to our sound Converter IC, the output of that IC would be 0001(Q1, Q2, Q3, Q4), Following table shows the output for remaining keys.

12. RGB LED interfacing• It’s is similar to a normal LED but the difference is that it can emit every possible

color. As its name suggest that it has three LED’s inside it of Red, Green and Blue color.

• It has Four LEGS, in which one is common and remaining three are for R, G and B color.

18

Page 19: Industrial training report of embedded system and robotics

13. RELAY INTERFACING• A relay is a simple electromechanical switch made up of an electromagnet and

a set of contacts.• Relays are used where it is necessary to control a circuit by a low-power signal

(with complete electrical isolation between control and controlled circuits), or where several circuits must be controlled by one signal

• Provide a sufficient amount of current to this relay, an extra circuit is also require because microcontroller is not capable of providing such current, that’s why ULN2803 IC is used for this purpose.

14. Touch screen interfacing

• A Touch Screen is an electronic visual display that the user can control through simple or multi-touch gestures by touching the screen with one or more fingers. Some Touch Screen can also detect objects such as a stylus or ordinary or specially coated gloves

19

Page 20: Industrial training report of embedded system and robotics

Types of Touch Screen:

• Resistive Touch Screen• Capacitive Touch Screen• Infrared Touch Screen• Surface Acoustic Wave• Optical Imaging

Resistive Touch Screen

• Resistive touchscreen is a relatively new technology which utilizes two flexible sheets that are separated by air gaps and coated by resistive material

• Pressure applied to the surface of the display by a finger or stylus causes the layers to touch, which completes electrical circuits and tells the device where the user is touching.

Detecting a Touch To know if the coordinate readings are valid, there must be a way to detect

whether the screen is being touched or not. This can be done by applying a positive voltage (VCC) to Y+ through a pull up resistor and applying ground to X–.

When there is no touch, Y+ is pulled up to the positive voltage. When there is a touch, Y+ is pulled down to ground as shown in Figure1. This voltage-level change can be used to generate a pin-change interrupt.

20

Page 21: Industrial training report of embedded system and robotics

How it works

A uniform voltage gradient is applied to one sheet.whenever the second sheet touches the other sheet, the second sheet measures the voltage as a distance along the first sheet. This combinaton of voltage and distance provides X cordinate.

after the X cordinate is located, entire process repeats itself by applying uniform voltage gradient to the second sheet inorder to find the Y cordinate.this entire process happens in a matter of milliseconds,oblivious to human eye.

As it’s also a kind of sensing device so, will give the output in analog form. Again we need to convert this form into digital form. That’s why we need a ADC.

15.RF Interfacing An RF Module is a (usually) small electronic circuit used to transmit,

receive, or transceiver radio waves on one of a number of carrier frequencies.

21

Page 22: Industrial training report of embedded system and robotics

To secure the data at both the end Encoding and decoding of data is required.

We will use RF434 module of wireless communication. RF stands for Radio frequency. And 434 means this module operates on 434MHz of frequency.

Since it would be serial communication, so we‟ll be needing an encoder & decoder IC for communication, because at transmitter end we are doing parallel communication with our kit but to transfer it at a long distance we have to send serially, so we will use an encoder IC HT12E at the transmitter side, and the same couple IC HT12D will be used at the receiver side to convert it back parallel.

22

Page 23: Industrial training report of embedded system and robotics

REFERENCES

• www.google.com • www.wikipedia.com

Google images:• http://www.embeddedsystem.com/ • http://robotics.nasa.gov / • www.cmosexod.com • www.best-microcontrollerprojects.com

23