際際滷

際際滷Share a Scribd company logo
1/29
Hu畉, 05-2018
NGHIN C畛U, CH畉 T畉O ROBOT B畉NG M畉CH
I畛U KHI畛N LOGIC L畉P TRNH 働畛C
畛Y BAN NHN DN T畛NH TH畛A THIN HU畉
TR働畛NG CAO 畉NG S働 PH畉M
------
畛 ti:
Ch畛 nhi畛m 畛 ti Thnh vi棚n tham gia
Th.S L GIA HA Th.S NGUY畛N THNH CNG
MS: 416030318
N畛I DUNG
M畛 畉u
M畉ch i畛u khi畛n logic l畉p tr狸nh 動畛c
Nghi棚n c畛u ch畉 t畉o robot
K畉t qu畉 v h動畛ng ph叩t tri畛n
1
2
4
3
 L箪 do ch畛n 畛 ti
 Nghi棚n c畛u l挑nh v畛c CM C担ng nghi畛p 4.0 畛 thay 畛i ch動董ng tr狸nh
v n畛i dung o t畉o
 Internet of things (IoT)
 Robotic
 B畉n th但n 達 c坦 nghi棚n c畛u tr動畛c, nghi棚n c畛u n但ng cao 畛 叩p d畛ng
trong c担ng vi畛c
 Ph動董ng ph叩p nghi棚n c畛u
 T狸m hi畛u m畉ch PLC, Arduino Uno v thi畉t b畛 ngo畉i vi
 K畉t h畛p c叩c k畛 thu畉t nh動:
 Ph動董ng ph叩p i畛u xung PWM
 Ph動董ng ph叩p 畉o chi畛u 畛ng c董 (m畉ch c畉u H)
 Ph動董ng ph叩p i畛u khi畛n b畉ng s坦ng v担 tuy畉n
 Ph動董ng ph叩p o kho畉ng c叩ch d湛ng c畉m bi畉n si棚u 但m
 .
- Nghi棚n c畛u c叩c h狸nh m畉u 畛 gi畉i quy畉t nhu c畉u
M畛 畉u
4/29
M畉ch i畛u khi畛n logic l畉p tr狸nh 動畛c (PLC)
 L m畛t m叩y vi t鱈nh nh畛 ch畛a t畉t c畉 tr棚n 1 chip (SoC)
Ch畛a 畛ng vi x畛 l箪, b畛 nh畛 v ng探 vo, ng探 ra
 Giao ti畉p b棚n ngoi qia c畛ng n畛i ti畉p, ADC, DAC, Bluetooth, Wi-Fi 
 L畉p tr狸nh 動畛c
 C坦 chi ph鱈 nh畛 v gi叩 th畉p
 Th担ng th動畛ng 動畛c nh炭ng b棚n trong thi畉t b畛 畛 ki畛m so叩t
5/29
B畛 vi i畛u khi畛n
 M叩y t鱈nh ch畛 tr棚n 1 chip t鱈ch h畛p
Processor (CPU)
Memory (RAM / ROM / Flash)
I/O ports (USB, I2C, SPI, ADC)
 C叩c h畛 microcontroller th担ng d畛ng
Intel: 4004, 8008 v.v..
Atmel: AT v AVR
Microchip: PIC
ARM: nhi畛u h達ng s畉n xu畉t
 畛ng d畛ng
i畛n tho畉i di 畛ng
畛 ch董i
Thi畉t b畛 gia d畛ng
Xe h董i
M叩y 畉nh, m叩y quay phim
6/29
Arduino => B畛 vi i畛u khi畛n
 N畛n t畉ng ph畉n c畛ng m畛
 M担i tr動畛ng n畛n t畉ng m達 ngu畛n m畛
D畛 dng h畛c ng担n ng畛 v th動 vi畛n
M担i tr動畛ng ph畉n m畛m ph叩t tri畛n t鱈ch h畛p
Ch畉y tr棚n n畛n t畉ng Windows / Mac / Linux
 C坦 th畛 l畉p tr狸nh cho b畛 vi i畛u khi畛n 畛 k thi畉t b畛 c董 i畛n

 C坦 th畛 k畉t n畛i t鱈n hi畛u k畛 thu畉t s畛 v t動董ng t畛
C畉m bi畉n (contac, si棚u 但m, 畛 畉m, 叩nh s叩ng)
Thi畉t b畛 truy畛n 畛ng (Motor 1 chi畛u, motor servo, motor b動畛c)
 L箪 do ch畛n m畉ch Arduino Uno
C坦 n畛n t畉ng d畛 d湛ng
D畛 l畉p tr狸nh (Arduino C l phi棚n b畉n r炭t g畛n c畛a C++)
Giao ti畉p chu畉n USB
H畛 tr畛 nhi畛u b畉ng m畉ch thi畉t b畛 ngo畉i vi
Gi叩 r畉
7/29
Arduino - Uno
 畉c t鱈nh v畛 i畛n c畛a c叩c ng探 vo ra
i畛n 叩p s畛 d畛ng: 7-12 V (USB, DC plug, or Vin)
D嘆ng xu畉t c畛c 畉i cho 1 ch但n: 40 mA
 C叩c c畛ng I/O
14 Digital I/O bits
 2 = serial TxD/RxD
4 LEDs
6 ng探 ra Analog
 i畛u ch畉 pulse-width
 C坦 th畛 ch畛n digital ho畉c PWM
 Gi畉i ph叩p 8-bit
6 ng探 vo Analog
 Gi畉i ph叩p l棚n 畉n 10-bit
8/29
Arduino - Uno
 The ATmega328P Microcontroller
S畛 d畛ng cho m畉ch Arduino UNO
Ki畉n tr炭c AVR 8-bit RISC
Xung nh畛p 20 MHz
B畛 nh畛 32kB flash
 30 kB s畛 d畛ng cho code
 2 kB s畛 d畛ng bootloader
2 kB RAM
L畉p tr狸nh 23 k棚nh I/O
6 ng探 vo 10-bit ADC
3 timers/counters
6 ng探 ra h畛 tr畛 PWM
9/29
Giao di畛n ch動董ng tr狸nh
Includes
Globals
void setup()
void loop()
10/29
C叩c s畉n ph畉m Arduino
 C坦 nhi畛u phi棚n b畉n kh叩c nhau t湛y thu畛c:
S畛 k棚nh I/O
K鱈ch th動畛c
Vi x畛 l箪
 Uno
 Leonardo
 Due
 Micro / Mini / Nano
 LilyPad
 Esplora
 Mega
11/29
C叩c b畉ng m畉ch g畉n th棚m (Shields)
<Color LCD shield><GPS shield> <Bluetooth module>
12/29
C叩c c畉m bi畉n g畉n th棚m (Sensors)
<Gas > <畛 畉m v nhi畛t 畛>
<Qu辿t v但n tay>
<o ph坦ng x畉>
13/29
Nghi棚n c畛u ch畉 t畉o robot
 Robot l m畛t lo畉i m叩y c坦 th畛 th畛c hi畛n nh畛ng c担ng
vi畛c m畛t c叩ch t畛 畛ng b畉ng s畛 i畛u khi畛n c畛a m叩y
t鱈nh ho畉c c叩c m畉ch PLC.
 Ph但n lo畉i Robot theo th畉 h畛
 Robot ho畉t 畛ng nh畛 ng動畛i i畛u khi畛n tr畛c ti畉p
 Robot ho畉t 畛ng theo chu tr狸nh c畛 畛nh.- robot l畉p 畉t.
 Robot ho畉t 畛ng theo chu tr狸nh thay 畛i 動畛c.
 Robot i畛u khi畛n b畉ng ch動董ng tr狸nh s畛.
 Robot th担ng minh
 C叩c b動畛c ch鱈nh 畛 x但y d畛ng robot trong 畛 ti
 Thi畉t k畉 h畛 th畛ng c董 kh鱈, h畛 th畛ng i畛n 畛 truy畛n 畛ng
 Thi畉t k畉 c董 ch畉 nh畉n l畛nh: i畛u khi畛n tr畛c ti畉p, th担ng minh
 L畉p tr狸nh
 Hi畛u ch畛nh
14/29
Nghi棚n c畛u ch畉 t畉o robot
 Linh ki畛n c畉n thi畉t
15/29
S董 畛 n畛i 糸但霞
16/29
Nghi棚n c畛u ch畉 t畉o robot
 Xe 4 b叩nh i畛u khi畛n qua bluetooth
/
17/29
Nghi棚n c畛u ch畉 t畉o robot
 Xe 3 b叩nh t畛 hnh tr叩nh v畉t c畉n 1 c畉m bi畉n xoay
/
18/29
Xe 3 b叩nh t畛 hnh tr叩nh v畉t c畉n 1 c畉m bi畉n
19/29
Xe 3 b叩nh t畛 hnh tr叩nh v畉t c畉n 1 c畉m bi畉n xoay
20/29
K畉t lu畉n v h動畛ng ph叩t tri畛n
 畛 ti 達 畉t 動畛c m畛t s畛 k畉t qu畉 sau:
Nghi棚n c畛u m畉ch PLC, Arduino Uno bao g畛m ki畉n tr炭c ph畉n c畛ng
v ng担n ng畛 l畉p tr狸nh c畛a n坦.
Nghi棚n c畛u thi畉t b畛 gh辿p n畛i v畛i m畉ch Arduino Uno bao g畛m: DC
motor, Servo motor, C畉m bi畉n si棚u 但m, Bluetooth, m畉ch i畛u
khi畛n 畛ng c董 L298, L293D.
Nghi棚n c畛u l箪 thuy畉t v畛 robot, 達 x但y d畛ng robot l xe i畛u khi畛n
th担ng qua bluetooth v xe t畛 hnh tr叩nh v畉t c畉n s畛 d畛ng vi i畛u
khi畛n Arduino Uno.
Tr棚n c董 s畛 m畉ch Arduino c坦 th畛 tri畛n khai 1 h畛 th畛ng m畛i
 H動畛ng ph叩t tri畛n ti畉p theo c畛a 畛 ti:
Nghi棚n c畛u v l畉p tr狸nh module Arduino ESP8266 b畉ng Arduino
IDE, s畛 d畛ng theo h動畛ng IoT.
Nghi棚n c畛u th棚m c叩c k畛 thu畉t l畉p tr狸nh.
Nghi棚n c畛u th棚m c叩c thi畉t b畛 c畉m bi畉n, thi畉t b畛 ngo畉i vi kh叩c m
畛 ti ch動a s畛 d畛ng.
21/29
Ti li畛u tham kh畉o
[1] Michael McRoberts (2010), Beginning Arduino
[2] Michael Margolis (2010), Arduino cookbook
[3] John-David Warren, Josh Adams, Harald Molle. (2012),
Arduino-Robotics
[4] https://www.arduino.cc/
[5] http://arduino.vn/reference
[6] https://vi.wikipedia.org/wiki/Arduino.
[7] http://fritzing.org

More Related Content

Mach vi dieu khien arduino va ung dung

  • 1. 1/29 Hu畉, 05-2018 NGHIN C畛U, CH畉 T畉O ROBOT B畉NG M畉CH I畛U KHI畛N LOGIC L畉P TRNH 働畛C 畛Y BAN NHN DN T畛NH TH畛A THIN HU畉 TR働畛NG CAO 畉NG S働 PH畉M ------ 畛 ti: Ch畛 nhi畛m 畛 ti Thnh vi棚n tham gia Th.S L GIA HA Th.S NGUY畛N THNH CNG MS: 416030318
  • 2. N畛I DUNG M畛 畉u M畉ch i畛u khi畛n logic l畉p tr狸nh 動畛c Nghi棚n c畛u ch畉 t畉o robot K畉t qu畉 v h動畛ng ph叩t tri畛n 1 2 4 3
  • 3. L箪 do ch畛n 畛 ti Nghi棚n c畛u l挑nh v畛c CM C担ng nghi畛p 4.0 畛 thay 畛i ch動董ng tr狸nh v n畛i dung o t畉o Internet of things (IoT) Robotic B畉n th但n 達 c坦 nghi棚n c畛u tr動畛c, nghi棚n c畛u n但ng cao 畛 叩p d畛ng trong c担ng vi畛c Ph動董ng ph叩p nghi棚n c畛u T狸m hi畛u m畉ch PLC, Arduino Uno v thi畉t b畛 ngo畉i vi K畉t h畛p c叩c k畛 thu畉t nh動: Ph動董ng ph叩p i畛u xung PWM Ph動董ng ph叩p 畉o chi畛u 畛ng c董 (m畉ch c畉u H) Ph動董ng ph叩p i畛u khi畛n b畉ng s坦ng v担 tuy畉n Ph動董ng ph叩p o kho畉ng c叩ch d湛ng c畉m bi畉n si棚u 但m . - Nghi棚n c畛u c叩c h狸nh m畉u 畛 gi畉i quy畉t nhu c畉u M畛 畉u
  • 4. 4/29 M畉ch i畛u khi畛n logic l畉p tr狸nh 動畛c (PLC) L m畛t m叩y vi t鱈nh nh畛 ch畛a t畉t c畉 tr棚n 1 chip (SoC) Ch畛a 畛ng vi x畛 l箪, b畛 nh畛 v ng探 vo, ng探 ra Giao ti畉p b棚n ngoi qia c畛ng n畛i ti畉p, ADC, DAC, Bluetooth, Wi-Fi L畉p tr狸nh 動畛c C坦 chi ph鱈 nh畛 v gi叩 th畉p Th担ng th動畛ng 動畛c nh炭ng b棚n trong thi畉t b畛 畛 ki畛m so叩t
  • 5. 5/29 B畛 vi i畛u khi畛n M叩y t鱈nh ch畛 tr棚n 1 chip t鱈ch h畛p Processor (CPU) Memory (RAM / ROM / Flash) I/O ports (USB, I2C, SPI, ADC) C叩c h畛 microcontroller th担ng d畛ng Intel: 4004, 8008 v.v.. Atmel: AT v AVR Microchip: PIC ARM: nhi畛u h達ng s畉n xu畉t 畛ng d畛ng i畛n tho畉i di 畛ng 畛 ch董i Thi畉t b畛 gia d畛ng Xe h董i M叩y 畉nh, m叩y quay phim
  • 6. 6/29 Arduino => B畛 vi i畛u khi畛n N畛n t畉ng ph畉n c畛ng m畛 M担i tr動畛ng n畛n t畉ng m達 ngu畛n m畛 D畛 dng h畛c ng担n ng畛 v th動 vi畛n M担i tr動畛ng ph畉n m畛m ph叩t tri畛n t鱈ch h畛p Ch畉y tr棚n n畛n t畉ng Windows / Mac / Linux C坦 th畛 l畉p tr狸nh cho b畛 vi i畛u khi畛n 畛 k thi畉t b畛 c董 i畛n C坦 th畛 k畉t n畛i t鱈n hi畛u k畛 thu畉t s畛 v t動董ng t畛 C畉m bi畉n (contac, si棚u 但m, 畛 畉m, 叩nh s叩ng) Thi畉t b畛 truy畛n 畛ng (Motor 1 chi畛u, motor servo, motor b動畛c) L箪 do ch畛n m畉ch Arduino Uno C坦 n畛n t畉ng d畛 d湛ng D畛 l畉p tr狸nh (Arduino C l phi棚n b畉n r炭t g畛n c畛a C++) Giao ti畉p chu畉n USB H畛 tr畛 nhi畛u b畉ng m畉ch thi畉t b畛 ngo畉i vi Gi叩 r畉
  • 7. 7/29 Arduino - Uno 畉c t鱈nh v畛 i畛n c畛a c叩c ng探 vo ra i畛n 叩p s畛 d畛ng: 7-12 V (USB, DC plug, or Vin) D嘆ng xu畉t c畛c 畉i cho 1 ch但n: 40 mA C叩c c畛ng I/O 14 Digital I/O bits 2 = serial TxD/RxD 4 LEDs 6 ng探 ra Analog i畛u ch畉 pulse-width C坦 th畛 ch畛n digital ho畉c PWM Gi畉i ph叩p 8-bit 6 ng探 vo Analog Gi畉i ph叩p l棚n 畉n 10-bit
  • 8. 8/29 Arduino - Uno The ATmega328P Microcontroller S畛 d畛ng cho m畉ch Arduino UNO Ki畉n tr炭c AVR 8-bit RISC Xung nh畛p 20 MHz B畛 nh畛 32kB flash 30 kB s畛 d畛ng cho code 2 kB s畛 d畛ng bootloader 2 kB RAM L畉p tr狸nh 23 k棚nh I/O 6 ng探 vo 10-bit ADC 3 timers/counters 6 ng探 ra h畛 tr畛 PWM
  • 9. 9/29 Giao di畛n ch動董ng tr狸nh Includes Globals void setup() void loop()
  • 10. 10/29 C叩c s畉n ph畉m Arduino C坦 nhi畛u phi棚n b畉n kh叩c nhau t湛y thu畛c: S畛 k棚nh I/O K鱈ch th動畛c Vi x畛 l箪 Uno Leonardo Due Micro / Mini / Nano LilyPad Esplora Mega
  • 11. 11/29 C叩c b畉ng m畉ch g畉n th棚m (Shields) <Color LCD shield><GPS shield> <Bluetooth module>
  • 12. 12/29 C叩c c畉m bi畉n g畉n th棚m (Sensors) <Gas > <畛 畉m v nhi畛t 畛> <Qu辿t v但n tay> <o ph坦ng x畉>
  • 13. 13/29 Nghi棚n c畛u ch畉 t畉o robot Robot l m畛t lo畉i m叩y c坦 th畛 th畛c hi畛n nh畛ng c担ng vi畛c m畛t c叩ch t畛 畛ng b畉ng s畛 i畛u khi畛n c畛a m叩y t鱈nh ho畉c c叩c m畉ch PLC. Ph但n lo畉i Robot theo th畉 h畛 Robot ho畉t 畛ng nh畛 ng動畛i i畛u khi畛n tr畛c ti畉p Robot ho畉t 畛ng theo chu tr狸nh c畛 畛nh.- robot l畉p 畉t. Robot ho畉t 畛ng theo chu tr狸nh thay 畛i 動畛c. Robot i畛u khi畛n b畉ng ch動董ng tr狸nh s畛. Robot th担ng minh C叩c b動畛c ch鱈nh 畛 x但y d畛ng robot trong 畛 ti Thi畉t k畉 h畛 th畛ng c董 kh鱈, h畛 th畛ng i畛n 畛 truy畛n 畛ng Thi畉t k畉 c董 ch畉 nh畉n l畛nh: i畛u khi畛n tr畛c ti畉p, th担ng minh L畉p tr狸nh Hi畛u ch畛nh
  • 14. 14/29 Nghi棚n c畛u ch畉 t畉o robot Linh ki畛n c畉n thi畉t
  • 15. 15/29 S董 畛 n畛i 糸但霞
  • 16. 16/29 Nghi棚n c畛u ch畉 t畉o robot Xe 4 b叩nh i畛u khi畛n qua bluetooth /
  • 17. 17/29 Nghi棚n c畛u ch畉 t畉o robot Xe 3 b叩nh t畛 hnh tr叩nh v畉t c畉n 1 c畉m bi畉n xoay /
  • 18. 18/29 Xe 3 b叩nh t畛 hnh tr叩nh v畉t c畉n 1 c畉m bi畉n
  • 19. 19/29 Xe 3 b叩nh t畛 hnh tr叩nh v畉t c畉n 1 c畉m bi畉n xoay
  • 20. 20/29 K畉t lu畉n v h動畛ng ph叩t tri畛n 畛 ti 達 畉t 動畛c m畛t s畛 k畉t qu畉 sau: Nghi棚n c畛u m畉ch PLC, Arduino Uno bao g畛m ki畉n tr炭c ph畉n c畛ng v ng担n ng畛 l畉p tr狸nh c畛a n坦. Nghi棚n c畛u thi畉t b畛 gh辿p n畛i v畛i m畉ch Arduino Uno bao g畛m: DC motor, Servo motor, C畉m bi畉n si棚u 但m, Bluetooth, m畉ch i畛u khi畛n 畛ng c董 L298, L293D. Nghi棚n c畛u l箪 thuy畉t v畛 robot, 達 x但y d畛ng robot l xe i畛u khi畛n th担ng qua bluetooth v xe t畛 hnh tr叩nh v畉t c畉n s畛 d畛ng vi i畛u khi畛n Arduino Uno. Tr棚n c董 s畛 m畉ch Arduino c坦 th畛 tri畛n khai 1 h畛 th畛ng m畛i H動畛ng ph叩t tri畛n ti畉p theo c畛a 畛 ti: Nghi棚n c畛u v l畉p tr狸nh module Arduino ESP8266 b畉ng Arduino IDE, s畛 d畛ng theo h動畛ng IoT. Nghi棚n c畛u th棚m c叩c k畛 thu畉t l畉p tr狸nh. Nghi棚n c畛u th棚m c叩c thi畉t b畛 c畉m bi畉n, thi畉t b畛 ngo畉i vi kh叩c m 畛 ti ch動a s畛 d畛ng.
  • 21. 21/29 Ti li畛u tham kh畉o [1] Michael McRoberts (2010), Beginning Arduino [2] Michael Margolis (2010), Arduino cookbook [3] John-David Warren, Josh Adams, Harald Molle. (2012), Arduino-Robotics [4] https://www.arduino.cc/ [5] http://arduino.vn/reference [6] https://vi.wikipedia.org/wiki/Arduino. [7] http://fritzing.org