#### Transcript Behavior-Based Robotics

```EE 1105: Introduction to EE
Freshman Seminar
Lab-Lecture: Op Amp Circuits,
Embedded Computing
Dan O. Popa, Freshman Seminar Spring 2015
Binary Counting
Base 2 vs Base 10
How many fingers do you have?
(probably 10)
0, 1, 2, 3, 4, 5, 6, 7, 8, 9….
10…!
But, wait! It’s not a single digit representing “ten”!!!
“1 – ten and 0 – ones”
Dan O. Popa, Freshman Seminar Spring 2015
Binary Counting
Digits…
You can count on your
fingers in Base 10…
Dan O. Popa, Freshman Seminar Spring 2015
Binary Counting
Base 2
Dan O. Popa, Freshman Seminar Spring 2015
Binary Counting
Base 2… cont’d
Finger Counting
Dan O. Popa, Freshman Seminar Spring 2015
Binary Counting
Base 2… cont’d
Why is this important?
All modern computing is done in Binary!
To learn more, including how to easily convert between Base 2 and base 10:
http://www.purplemath.com/modules/numbbase.htm
There are other “bases” too, Base 16, Base 20… all important
Dan O. Popa, Freshman Seminar Spring 2015
Binary Counting
Base 2… in Hardware?
But Binary Numbers Can be Thought of as
On/ Off Switches in hardware…
1/ 0 … On/ Off
Like a row of light switches!
Dan O. Popa, Freshman Seminar Spring 2015
Transistors
Water Analogy
Dan O. Popa, Freshman Seminar Spring 2015
Transistors
Water analogy cont’d…BJT!
Bipolar Junction Transistor
 A bipolar junction transistor (BJT or bipolar transistor) is a type
of transistor that relies on the contact of two types of semiconductor
for its operation. BJTs can be used as amplifiers, switches, or in
oscillators.
 Two main types: NPN and PNP
Dan O. Popa, Freshman Seminar Spring 2015
Transistors
Water analogy cont’d…BJT!
BJTs are variable valves!


By changing the “pressure” to the Base… you can change
the “flow” from the Emitter to the Collector
Like turning “up” the knob on the water hose!
Changing VEB changes IC
small changes in VEB = large changes in IC
Dan O. Popa, Freshman Seminar Spring 2015
Transistors
In Practice
BJTs can be combined to make
… Stuff

By combining BJTs you can create
 Switches
 Op-Amps
 Oscillators
 Inverters
Dan O. Popa, Freshman Seminar Spring 2015
Transistor use: Digital Inverter
Dan O. Popa, Freshman Seminar Spring 2015
The Operational Amplifier
The op amp is built using VLSI techniques. The circuit
diagram of an LM 741 from TI is
shown below.
Vp(+)
Vn(-)
Taken from TI
data sheet as
shown on the
web.
Vcc+
Vo
VccDan O. Popa, Freshman Seminar Spring 2015
The Operational Amplifier
The basic op amp with supply voltage included is shown in the
diagram below.
V-
_
inverting input
output
Vd
+
noninverting input
V2
V+

Dan O. Popa, Freshman Seminar Spring 2015
V1
Ro
Ri
AVd
Vo
Op-Amp
• Rules of Op-Amps
– Voltage supplied at “+” appears at “-”
– No current applied to inputs
– Has “infinite” gain… in no feedback
configuration
Dan O. Popa, Freshman Seminar Spring 2015
Op-Amp
Inverting Op-Amp
 If Rf = Ri
Dan O. Popa, Freshman Seminar Spring 2015
Then AV = Vout = -Vin
Ideal Op-Amp
Dan O. Popa, Freshman Seminar Spring 2015
Feedback Connection
Dan O. Popa, Freshman Seminar Spring 2015
Op-Amp Circuits
Dan O. Popa, Freshman Seminar Spring 2015
Op-Amp Circuits
Integrator Circuit
Vout either ground or smaller than rail
Vin between ground and Vout
Dan O. Popa, Freshman Seminar Spring 2015
D/A and A/D conversion
Dan O. Popa, Freshman Seminar Spring 2015
Digital to Analog Converter (DAC)
n=4, G=-0.5
Dan O. Popa, Freshman Seminar Spring 2015
and the Process of Sampling
Dan O. Popa, Freshman Seminar Spring 2015
Analog to Digital Converter using a DAC
Dan O. Popa, Freshman Seminar Spring 2015
Sample and Hold Circuit
Dan O. Popa, Freshman Seminar Spring 2015
•
board features:
– 14-/20-pin DIP (N) socket
– Built-in flash emulation for
debugging and programming
– 2 programmable LEDs
– 1 power LED
– 1 programmable button
– 1 reset button
•
•
Includes one mini USB cable to
interface with a PC.
MSP430G2553IN20 – 16kB
Flash, 512B RAM, interruptible
GPIOs (capacitive sensecapable), 16-bit timers, 8ch 10bit ADC, Comparator, Serial
Communication (USCI – I2C,
SPI & UART) & more
Dan O. Popa, Freshman Seminar Spring 2015
Programming Constructs
Data Types
- Primitives (Integer, Float, etc)
- Const, Var, Pointer
- Complex (Lists, arrays, etc.)
- Register values (tied to hardware)
- Timer (clocks, tied to hardware)
Operations on data
- +, - , =, etc.
Control Statements
- If, case (conditional)
- While, For (loops)
Function calls
- User defined
- Main ()
- MSP 430 specific: ex. ConfigureADC
26
Microcontrollers
(MCU)Processor
Application
(MPU)
TI’s
Embedded
Portfolio
MSP430
C2000
Tiva
Hercules
Sitara
DSP
Multicore
16-bit
Ultra Low
Power & Cost
32-bit
32-bit
All-around
MCU
32-bit
32-bit
Linux
Android
16/32-bit
All-around
DSP
32-bit
Massive
Performance
ARM
Cortex-A8
Cortex-A9
DSP
C5000
C6000
• C66 + C66
• A15 + C66
• A8 + C64
• ARM9 + C674
MSP430
ULP RISC
MCU
• Low Pwr Mode
 0.1 µA
 0.5 µA (RTC)
• Analog I/F
• RF430
Real-time
• Real-time
ARM
C28x MCU Cortex-M3
• ARM M3+C28 Cortex-M4F
Safety
ARM
Cortex-M3
Cortex-R4
• Motor Control • 32-bit Float
• Lock step
• \$5 Linux CPU • C5000 Low
•
Nested
Vector
Dual-core
R4
Power DSP
• Digital Power
IntCtrl (NVIC) • ECC Memory • 3D Graphics
• 32-bit fix/float
• Precision
• PRU-ICSS
•
Ethernet
industrial subsys C6000 DSP
Timers/PWM
(MAC+PHY) • SIL3 Certified
4 A15 + 8 C66x
• DSP MMAC’s:
352,000
TI RTOS
(SYS/BIOS)
TI RTOS
(SYS/BIOS)
TI RTOS
(SYS/BIOS)
N/A
Flash: 512K
FRAM: 64K
512K
Flash
512K
Flash
256K to 3M
Flash
L1: 32K x 2
L2: 256K
L1: 32K x 2
L2: 256K
L1: 32K x 2
L2: 1M + 4M
25 MHz
300 MHz
80 MHz
220 MHz
1.35 GHz
800 MHz
1.4 GHz
\$0.25 to
\$9.00
\$1.85 to
\$20.00
\$1.00 to
\$8.00
\$5.00 to
\$30.00
\$5.00 to
\$25.00
\$2.00 to
\$25.00
\$30.00 to
\$225.00
Dan O. Popa, Freshman Seminar Spring 2015
Linux, Android, C5x: DSP/BIOS
SYS/BIOS
C6x: SYS/BIOS
• Fix or Float
• Up to 12 cores
Linux
SYS/BIOS
Next week, robotics and control
Dan O. Popa, Freshman Seminar Spring 2015
28
```