SlideShare a Scribd company logo
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ MINH
KHOA KỸ THUẬT ĐIỆN TỬ 2
_____________
ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
CHUYÊN NGÀNH: KỸ THUẬT ĐIỆN TỬ - MÁY TÍNH
HỆ CHÍNH QUY
NIÊN KHÓA: 2013-2018
Đề tài:
MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ THÔNG MINH
QUA GIỌNG NÓI
Mã số đề tài: 18- N13DCDT101
Sinh viên thực hiện: NGUYỄN TRUNG THÔNG
MSSV: N13DCDT101
Lớp: D13CQKD02-N
Giáo viên hướng dẫn: TS. CHUNG TẤN LÂM
12/2017
TP.HCM – 2017
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
LỜI CẢM ƠN
Đầu tiên, em xin chân thành gửi lời cảm ơn đến toàn thể quý thầy cô Học
Viện Công nghệ Bưu chính Viễn Thông cơ sở TP.HCM nói chung và quý thầy cô
khoa Điện -Điện Tử II nói riêng, cảm ơn tất cả các thầy cô đã tận tình giảng dạy,
truyền đạt những kiến thức quý báu trong suốt bốn năm em học tập và rèn luyện tại
trường. Đặc biệt, em xin được gửi lời cảm ơn sâu sắc nhất tới Giảng viên hướng
dẫn:Thầy T.S Chung Tấn Lâm đã hết lòng hỗ trợ, giúp đỡ em từ giai đoạn chọn đề
tài, có những góp ý hết sức đáng giá trong quá trình làm cũng như các kinh nghiệm
mà thầy đã truyền đạt cho em.
Nhân đây, em cũng xin gửi lời cảm ơn tới gia đình và bạn bè, họ đã cho em
những lời động viên, khích lệ và cả những lời phê bình nghiêm túc trong học tập và
trong cuộc sống.
Em xin kính chúc quý thầy cô trong trường, trong khoa thành công trong
công việc cũng như trong cuộc sống.
Một lần nữa, em xin trân trọng cảm ơn.
Thành phố Hồ Chí Minh, ngày 4 tháng 12 năm 2017
i
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
MỤC LỤC
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3................................................. 1
1.1 GIỚI THIÊU CHUNG .......................................................................................................... 1
1.1.1 Raspberry Pi là gì?.......................................................................................................... 1
1.1.2 Raspberry Pi dùng để làm gì?...................................................................................... 2
1.1.3 Tại sao lại chọn Raspberry Pi...................................................................................... 2
1.2 PHẦN CỨNG.......................................................................................................................... 3
1.3 HỆ ĐIỀU HÀNH VÀ PHẦN MỀM ................................................................................. 5
1.3.1 Raspbian ............................................................................................................................ 5
1.3.2 Thư viện WiringPi.......................................................................................................... 5
1.3.3 Module RPi.GPIO........................................................................................................... 6
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT...........................................................10
2.1 GOOGLE CLOUD PLATFORM ....................................................................................10
2.2 GOOGLE CLOUD SPEECH API...................................................................................20
2.3 GOOGLE ASSISTANT LÀ GÌ?......................................................................................21
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER......25
3.1 Khởi tạo website....................................................................................................................25
3.1.1 Ngôn ngữ PHP...............................................................................................................25
3.1.2 Phương thức GET and POST....................................................................................28
3.1.3 Cơ sở dữ liệu ..................................................................................................................30
3.1.4 Giao diện Website (Front end)..................................................................................34
3.2 Triển khai webserver lên server thật. ..............................................................................35
3.2.1 Hosting.............................................................................................................................35
3.2.2 Tên Miền ( Domain).....................................................................................................36
3.2.3 Cpanel và File Manager..............................................................................................36
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG.....................................................39
4.1 Phần Cứng...............................................................................................................................39
4.1.1 Các linh kiện cần có:....................................................................................................39
4.1.2 Sơ đồ kết nối...................................................................................................................41
4.1.3 Nguyên mẫu thành phẩm............................................................................................43
4.2 Phần mềm................................................................................................................................44
4.2.1 Chương trình nhận diện giọng nói trên raspberry pi...........................................44
4.2.2 Hệ thống website và cách sử dụng...........................................................................45
TỔNG KẾT ......................................................................................................................................47
TÀI LIỆU THAM KHẢO ..........................................................................................................48
ii
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
DANH MỤC HÌNH
Hình 1.1 Bo mạch raspberry pi 3............................................................................................................ 1
Hình 1.2 các dòng Raspberry Pi thông dụng hiện nay .................................................................. 2
Hình 1.3 Sơ đồ cấu tạo Raspberry Pi .................................................................................................... 3
Hình 1.4 Sơ đồ chân của Raspberry Pi 3............................................................................................. 5
Hình 2.1 Logo Google Cloud Platform............................................................................................. 10
Hình 2.2 Ảnh hiển thị khi đăng nhập vào console của google cloud................................... 11
Hình 2.3 Chọn Select a project để tiếp tục ...................................................................................... 12
Hình 2.4 Chọn Create Project................................................................................................................ 12
Hình 2.5 Đặt tên cho project và nhấn Create.................................................................................. 13
Hình 2.6 APIs & services submenu.................................................................................................... 13
Hình 2.7 APIs and Serices dashboard................................................................................................ 14
Hình 2.8 Tìm kiếm APIs.......................................................................................................................... 14
Hình 2.9 Kích hoạt API............................................................................................................................ 15
Hình 2.10 Khởi tạo giấy chứng nhận ................................................................................................. 15
Hình 2.11 Thiết lập tới API cần giấy chứng nhận........................................................................ 16
Hình 2.12 Phân quyền cho giấy chứng nhận .................................................................................. 16
Hình 2.13 Service key đã được khởi tạo........................................................................................... 17
Hình 2.14 Chứng thực Oauth................................................................................................................. 17
Hình 2.15 Lưu chứng thực...................................................................................................................... 18
Hình 2.16 Tạo giấy phép từ chứng thực Oauth ............................................................................. 18
Hình 2.17 Đặt tên cho ID người dùng ............................................................................................... 19
Hình 2.18 Tải file chứng thực về máy tính. .................................................................................... 19
Hình 2.19 Logo Google Assistant ....................................................................................................... 21
Hình 3.1 Logo ngôn ngữ PHP............................................................................................................... 25
Hình 3.2 Truy vấn SELECT trong MySQL.................................................................................... 33
Hình 3.3 Truy vấn UPDATE trong MySQL................................................................................... 34
Hình 3.4 File Manager trong cPanel................................................................................................... 37
Hình 3.5 Option Upload trong File Manager.................................................................................. 37
Hình 3.6 Giao diện Upload file trong cPanel ................................................................................. 38
Hình 4.1 Máy tính nhúng Rasberry Pi 3........................................................................................... 39
Hình 4.2 Loa ................................................................................................................................................. 39
Hình 4.3 Microphone mini ..................................................................................................................... 40
Hình 4.4 USB SOUND CARD............................................................................................................. 40
Hình 4.5 Relay ............................................................................................................................................. 41
Hình 4.6 Sơ đồ kết nối của Raspberry pi với Relay .................................................................... 41
Hình 4.7 Kết nối giữa Raspberry Pi với loa và microphone.................................................... 42
Hình 4.8 Các thành phần sau khi được lắp ghép vào nhau. ..................................................... 43
Hình 4.9 Mô hình khi đã hoàn thiện................................................................................................... 43
Hình 4.10 Khởi động chương trình thành công............................................................................. 44
Hình 4.11 Quá nhận dạng giọng nói bắt đầu .................................................................................. 44
Hình 4.12 Toàn bộ 1 phiên hoạt động của google assistant..................................................... 44
Hình 4.13 Giao diện chính của trang web........................................................................................ 45
Hình 4.14 Lịch sử 10 lần bật tắt gần nhất của thiết bị................................................................ 46
iii
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
1.1 GIỚI THIÊU CHUNG
1.1.1 Raspberry Pi là gì?
Raspberry Pi là từ để chỉ các máy tính chỉ có một board mạch (hay còn gọi là
máy tính nhúng) kích thước chỉ bẳng một thẻ tín dụng, được phát triển tại Anh bởi
Raspberry Pi Foundation với mục đích ban đầu là thúc đẩy việc giảng
dạy về khoa học máy tính cơ bản trong các trường học và các nước đang
phát triển.
Hình 1.1 Bo mạch raspberry pi 3
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 1
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
1.1.2 Raspberry Pi dùng để làm gì?
Bạn có thể search Google với cụm từ "Raspberry Pi projects" để thấy
người ta dùng Pi làm các thứ như:
• Đầu coi phim HD giống như Android Box, hỗ trợ KODI đầy đủ.
• Máy chơi game cầm tay, console, game thùng. Chơi như máy điện tử
băng ngày xưa, giả lập được nhiều hệ máy.
• Cắm máy tải Torrent 24/24.
• Dùng làm VPN cá nhân.
• Biến ổ cứng bình thường thành ổ cứng mạng (NAS).
• Làm camera an ninh, quan sát từ xa.
• Hiển thị thời tiết, hiển thị thông tin mạng nội bộ...
• Máy nghe nhạc, máy đọc sách.
• Làm thành một cái máy Terminal di động có màn hình, bàn phím, pin dự
phòng để sử dụng mọi lúc mọi nơi, dò pass Wi-Fi...
• Làm thiết bị điều khiển Smart Home, điều khiển mọi thiết bị điện tử
trong nhà.
• Điều khiển robot, máy in không dây từ xa, Airplay...
• ...
Hình 1.2 các dòng Raspberry Pi thông dụng hiện
nay 1.1.3 Tại sao lại chọn Raspberry Pi
• Giá rẻ: chỉ từ 5 USD thôi là bạn đã mua được một cái Pi (phiên bản rút gọn
Raspberry Pi Zero). Bản Pi 3 là mạnh nhất hiện tại, có đầy đủ Wi-Fi, Bluetooth,
cấu hình cao nhất.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 2
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
• Đơn giản, dễ dùng, tiết kiệm không gian: dùng làm các công việc văn phòng
đơn giản, gõ Word, Excel hay tạo PowerPoint, lướt web.
• Tự học lập trình bằng các app đơn giản của Pi, trẻ em cũng học được.
• Tiêu thụ rất ít điện: Ví dụ như tải Torrent, thay vì cắm máy tính công suất
hàng trăm Watts liên tục 24/24 thì chỉ cần dùng một cái Pi công suất chưa tới
5W cũng làm được.
• Có tính di động cao: có thể bỏ vào túi mang đi khắp nơi, thích hợp để làm máy
nghe nhạc di động, máy đọc ebook, máy dò pass Wi-Fi, máy chơi game cầm
tay.
1.2 PHẦN CỨNG
Hình 1.3 Sơ đồ cấu tạo Raspberry Pi
Raspberry Pi có hai phiên bản, Model A có giá 25$ và Model B có giá 35$ .
Model B như hình trên thông dụng hơn cả. Model B bao gồm những phần cứng và
những cổng giao diện:
• SoC 700MHz với 512MB RAM
• 1 cổng HDMI cho đầu ra âm thanh / video số
• 1 cổng video RCA cho đầu ra video Analog
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 3
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
• Jack Headphone Stereo 3.5mm cho đầu ra âm thanh Analog
• 02 cổng USB
• 01 đầu đọc thẻ nhớ SD để tải hệ điều hành
• 01 cổng Ethernet LAN.
• 01 giao diện GPIO (General Purpose Input/Output)
Model A cũng gần tương tự như Model B nhưng có sự thay đổi như sau
• 1 cổng USB
• Không có cổng Ethernet vì thế người dùng phải thêm Adapter USB Wi-Fi hoặc
Ethernet nếu cần kết nối mạng
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
256MB RAM
Broadcom BCM2837 chipset running at 1.2 GHz
64-bit quad-core ARM Cortex-A53 802.11 b/g/n
Wireless LAN
Bluetooth 4.1 (Classic & Low Energy)
Dual core Videocore IV® Multimedia co-processor
1 GB LPDDR2 memory
Supports all the latest ARM GNU/Linux distributions and Windows 10 IoT
MicroUSB connector for 2.5 A power supply 1 x 10/100 Ethernet port
1 x HDMI video/audio connector
1 x RCA video/audio connector
4 x USB 2.0 ports
40 GPIO pins
Chip antenna
DSI display connector
MicroSD card slot
Dimensions: 85 x 56 x 17 mm
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 4
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
Hình 1.4 Sơ đồ chân của Raspberry Pi 3
1.3 HỆ ĐIỀU HÀNH VÀ PHẦN MỀM
1.3.1 Raspbian
Đây là bản build Linux dựa trên nên Debian (Gần giống ubuntu) với giao diện
LXDE (thay vì GNOME). Có đầy đủ web browser, media player, tools, etc … Nói
chung HĐH này dành cho những người muốn dùng Raspberry Pi như một cái PC.
Raspbian có dung lượng sau khi giải nén là khoảng gần 4GB, bạn cần tối thiểu
1 cái thẻ 4GB để có thể sử dụng Raspbian. Tuy nhiên, chúng tôi nghĩ bạn nên sử dụng
thẻ tối thiểu 8GB vì bạn cần cài thêm các ứng dụng khác nữa.
Raspbian được hướng đến người dùng có mục đích:
• Sử dụng Raspberry Pi như máy tính văn phòng để lướt web, soạn văn bản, check
mail và thi thoảng nghe nhạc/xem phim.
• Nghiên cứu phát triển các thiết bị điều khiển tự động.
• Sử dụng như một máy chủ cung cấp các dịch vụ như web, file server, printer server
1.3.2 Thư viện WiringPi
Một trong những ứng dụng chủ yếu của Raspberry Pi là sử dụng trong các thiết
bị điều khiển tự động. Để tiến hành điều khiển, đọc, nhận dữ liệu từ các thiết bị bên
ngoài chúng ta cần thao tác với các chân cắm mở rộng trên kit Raspberry Pi.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 5
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
Để sử dung, điều khiển các chân cắm mở rộng GPIO trên kit Raspberry Pi một
cách đơn giản và dễ hiểu người ta thường sử dụng bộ thư viện WiringPI. WiringPi là
một thư viện truy cập GPIO viết bằng C cho BCM2835 sử dụng trong Raspberry Pi.
Nó được phát hành theo giấy phép GNU LGPLv3 và là có thể sử dụng từ C và C ++ và
nhiều ngôn ngữ khác. Với bộ thư viện này, chúng ta có thể lập trình vào ra cơ bản cho
từng chân của Raspberry Pi, hoặc có thể cấu hình, tổ hợp các chân để làm các tính
năng chuyên biệt như : điều chế độ rộng xung PWM, giao tiếp UART, SPI, I2C… Và
nhiều tính năng khác nữa.
Để sử dụng được bộ thư viện WirringPi cho lập trình GPIO việc đầu tiên là phải
tiến hành cài đặt bộ thư viện này vào kít Raspberry Pi chạy hệ điều hành Raspbian.Các
bước cài đặt này như sau:
Bước 1: Cài đặt chương trình download dữ liệu GIT. Mở terminal gõ lệnh:
$ sudo apt-get install git-core
Bước 2: Download bộ thư viện và các ví dụ về WiringPi về kit bằng cách gõ
lệnh:
$ git clone git://git.dragon.net/wiringPi ~
Sau khi download, thư viện wiringPi sẽ nằm trong thư mục home của Raspbian.
Bước 3: Chuyển đến thư mực Wiringpi để tiến hành build thư viện này.
$ cd ~/WiringPi
$ ./build
Sau khi tiến hành các bước trên thì WiringPi đã được cài đặt trên máy. Để tiến
hành kiểm tra quá trình cài đặt ta dùng lệnh:
$ gpio -v
$ gpio readall
1.3.3 Module RPi.GPIO
Để điều khiển GPIO của Raspberry Pi bằng Python, một trong những
phương pháp phổ biến nhất là sử dụng module RPi.GPIO.
1.3.3.1 Cài đặt
Thường thì RPi.GPIO đã mặc định có sẵn khi bạn cài đặt Raspbian.
Trong trường hợp chưa có bạn có thể tự cài đặt thư viện này:
$ sudo apt - get update
1.3.3.2 Sử dụng module
Trong chương trình Python, bạn bắt đầu bằng:
Với lệnh trên, bạn có thể sử dụng thư viện với cái tên GPIO trong suốt
phần sau của chương trình, bạn cũng có thể dùng bất cứ tên gì khác mà bạn
muốn.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 6
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
Để thông báo lỗi (nếu có) trong quá trình import:
try:
import RPi.GPIO as GPIO
except RuntimeError:
print("Lỗi! Không import được RPi.GPIO, có thể bạn cần
dùng 'sudo' để thực thi script")
1.3.3.3 Đánh số chân
Có 2 cách để đánh số chân (pin) cho Raspberry Pi với RPi.GPIO (bạn
hãy xem sơ đồ chân trong hình 1.4 Sơ đồ chân của Raspberry Pi).
Một là sử dụng kiểu BOARD. Đây là kiểu đánh số theo thự tự chân
trên board, như trong hình là các Pin# từ 1 đến 40 theo thứ tự. Lợi ích của việc
sử dụng kiểu này là chương trình của bạn vẫn sẽ chạy đúng dù bạn có đổi từ
version Pi này sang version Pi khác vì thứ tự chân vẫn vậy.
Hai là sử dụng kiểu BCM. Đây là kiểu đánh số chân dựa trên chân của
chíp xử lý Broadcom SOC. Chương chình của bạn có thể bị chạy sai nếu sử
dụng kiểu này vì hai version Pi khác nhau có thể sử dụng SOC khác nhau.
Hiện thực trong chương trình:
GPIO.setmode(GPIO.BOARD)
# hoặc
GPIO.setmode(GPIO.BCM)
Để xác định kiểu đánh số chân nào đang được sử dụng (chẳng hạn từ
một chương trình Python khác)
mode = GPIO.getmode()
Kết quả trả về sẽ là GPIO.BOARD, GPIO.BCM hoặc None
1.3.3.4 Warning
Đôi khi một hoặc nhiều chương trình đang cố điều khiển cùng một chân
của GPIO, lúc này RPi.GPIO sẽ đưa ra một warning về điều đó. Để ẩn warning
này, bạn chỉ cần:
GPIO.setwarnings(False)
Thiết lập kênh
Bạn cần phải thiết lập chân GPIO là input(ngõ vào) hay output (ngõ ra).
Thiết lập ngõ vào:
GPIO.setup(pin, GPIO.IN)
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 7
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3
với pin là chân mà bạn muốn thiết lập (dựa vào kiểu đánh số BOARD
hay BCM đã đề cập ở trên).
Thiết lập ngõ ra:
GPIO.setup(pin, GPIO.OUT)
Bạn cũng có thể khởi tạo giá trị ban đầu cho ngõ ra (chẳng hạn bạn muốn
ngõ ra là mức cao ngay khi chương trình bắt đầu chạy):
GPIO.setup(pin, GPIO.OUT, initial=GPIO.HIGH)
Thiết lập nhiều chân cùng lúc
Python cho phép bạn tạo danh sách (list). Và để thiết lập nhiều chân
GPIO cùng một chức năng, bạn chỉ cần tạo một list các chân GPIO đó và truyền
vào hàm setup:
pin_list = [11,12] # bao nhiêu chân tùy ý
bạn GPIO.setup(pin_list, GPIO.OUT)
Ngoài ra, thay vì dùng list bạn cũng có thể dùng tuple :
pin_tup = (11,12)
Input
Để đọc giá trị vào từ chân GPIO, ta dùng:
GPIO.input(pin)
Hàm trên sẽ trả về mức thấp 0 / GPIO.LOW / False hoặc mức cao 1 /
GPIO.HIGH / True.
Output
Để cho ra mức điện áp thấp hoặc cao trên một chân GPIO, ta dùng:
GPIO.output(pin, state)
Trong đó state (trạng thái) có thể là 0 / GPIO.LOW / False hoặc mức
cao 1 / GPIO.HIGH / True.
Output cho nhiều chân cùng lúc
Cũng tương tự với việc bạn thiết lập ngõ ra cho nhiều chân:
pin_list = [11,12]
GPIO.output(pin_list, GPIO.LOW) # Tất cả các chân mức thấp
GPIO.output(pin_list, (GPIO.HIGH, GPIO.LOW)) # Chân 11 mức cao,
chân 12 mức thấp
1.3.3.5 Cleanup
Ở cuối chương trình, bạn nên đưa trạng thái các GPIO về mặc định (điều
này giúp bạn tránh được tình trạng ngắn mạch gây ra hư hại GPIO). Để làm
được điều đó, ta sử dụng:
GPIO.cleanup()
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 8
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
Lưu ý rằng hàm cleanup chỉ xóa trạng thái của những chân đã được bạn
sử dụng trong chương trình và một điều quan trọng là cleanup cũng đồng thời
sẽ xóa thiết lập đánh số chân (BCM hay BOARD) trong chương trình của bạn.
Vậy nên hãy chắc rằng cleanup được dùng khi chương trình kết thúc.
Bạn cũng hoàn toàn có thể xóa những chân cụ thể thay vì toàn bộ các
chân đã được sử dụng:
GPIO.cleanup(pin) # xóa một chân cụ thể GPIO.cleanup(
(pin11, pin12) ) # xóa 2 chân sử dụng list GPIO.cleanup(
[pin11, pin12] ) # xóa 2 chân sử dụng tuple Thông tin về
board và RPi.GPIO
Sử dụng lệnh print để in ra những thông tin cần biết về board và RPi,
chẳng hạn:
print(GPIO.RPI_INFO)
1.3.3.6 Các thông số cần biết:
Thông tin về RPi GPIO.RPI_INFO
Thông tin về board Raspberry Pi GPIO.RPI_INFO['P1_REVISION'] và
GPIO.RPI_REVISION(deprecated)
Version của RPi.GPIO đang sử dụng: GPIO.VERSION
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 9
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
2.1 GOOGLE CLOUD PLATFORM
Hình 2.1 Logo Google Cloud Platform
Google Cloud Platform là dịch vụ máy chủ của Google cung cấp dưới dạng
điện toán đám mây (nghe lùng bùng rồi). Bạn cứ hiểu đơn giản là mọi máy tính, phần
mềm có sẵn cả, chỉ cần lên bấm nút là xài. Công ty bạn chẳng cần phải thuê chổ đặt
máy chủ, chả phải trả tiền điện, tiền bảo trì hàng tháng, bảo mật … Google lo từ A đến
Z sau đám mây đen đó, nói chung là là họ lo hết.
Google Cloud Platform không chỉ cung cấp dịch vụ máy chủ không mà còn
cung cấp API (cách thức gọi xử lý thông tin) mà Google là cả kho thông tin như tìm
kiếm, youtube, bản đồ, drive, email…
Để sử dụng google cloud platform ta cần thực hiện các bước
sau. Lưu ý: Các thao tác được thực hiện trên hệ điều hành Linux
Bước 1: Tải và cài đặt Google Cloud Platform tại địa chỉ:
https://cloud.google.com/sdk/
Bước 2: Tiến hành cài đặt Google Cloud Platform bằng dòng lệnh
./google-cloud-sdk/install.sh
Bước 3: Sau khi đã cài đặt thành công Google Cloud Platform ta khỏi tạo SDK
bằng cách:
./google-cloud-sdk/bin/gcloud init
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 10
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Để xác máy tính đang xử dụng với google cloud platform ta truy cập vào địa chỉ
sau:
https://console.cloud.google.com/ và đăng nhập tài khoản google.
Hình 2.2 Ảnh hiển thị khi đăng nhập vào console của google cloud
Sau khi đăng nhập cửa sổ Platform hiện lên các bạn chọn giống như hình và
ấn tiếp tục.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 11
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Hình 2.3 Chọn Select a project để tiếp tục
Click chuột vào Selecrt a project.
Hình 2.4 Chọn Create Project
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 12
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Ấn vào dấu + ở đây để tạo Project mới.
Hình 2.5 Đặt tên cho project và nhấn
Create Đặt tên cho Project này và ấn Create. Bước 7:
Hình 2.6 APIs & services submenu
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 13
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Click chuột vào API & services
Hình 2.7 APIs and Serices dashboard
Sau đó chọn Enable APIS AND Services
Hình 2.8 Tìm kiếm APIs
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 14
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Gõ vào thẻ tìm kiếm cụm từ Google assistant để tìm kiếm APIs, APIs tìm
được sẽ xuất hiện bên dưới các bạn click vào nó.
Hình 2.9 Kích hoạt API
Và chọn Enable ở đây.
Hình 2.10 Khởi tạo giấy chứng nhận
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 15
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Tiếp đến chọn Create Credentials
Hình 2.11 Thiết lập tới API cần giấy chứng nhận
Đặt các tùy chọn như hình trên, và click vào What Credentials do I need?
Hình 2.12 Phân quyền cho giấy chứng nhận
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 16
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Tiếp tục thiết lập như hình và Click vào Continue
Hình 2.13 Service key đã được khởi tạo
File Service key được tạo và tải về.
Hình 2.14 Chứng thực Oauth
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 17
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Các bạn chuyển sang thẻ Oauth consent Screen
Hình 2.15 Lưu chứng thực
Điền địa chỉ email đã đăng nhập ban đầu và điền Product name sau đó chọn Save
Hình 2.16 Tạo giấy phép từ chứng thực Oauth
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 18
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Sau đó click vào Create credentials và chọn dòng Oauth client ID
Hình 2.17 Đặt tên cho ID người dùng.
Mục Application type các bạn Other, mục name các bạn điền tên của
client sau đó ấn Create.
Hình 2.18 Tải file chứng thực về máy tính.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 19
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
2.2 GOOGLE CLOUD SPEECH API
Google Speech API là dịch vụ cho phép chuyển từ giọng nói thành text, hiện tại
đã hỗ trợ khá nhiều ngôn ngữ, trong đó có tiếng Việt. Google Speech API là API cho
phép lập trình viên sử dụng dịch vụ của Google cho các ứng dụng của mình, có mặt
trên khá nhiều nền tảng, trong đó khá phổ biến là Android.
Để sử dụng Google Speech API ta cần tạo file json có nội dung như sau:
{
"config": {
"encoding":"FLAC",
"sampleRateHertz": 16000,
"languageCode": "en-US",
"enableWordTimeOffsets": false
},
"audio": {
"uri":"gs://cloud-samples-tests/speech/brooklyn.flac"
}
}
Lưu file này với tên sync-request.json
Trong đó ở phần tử config ta thiết lập các thông số của file nguồn về kiểu mã
hóa, tần số lấy mẫu và khu vực ngôn ngữ.
Tiếp theo ở phần tử audio, ta thiết lập đường dẫn đến file nguồn.
Sau đó ta cần xác thực tài khoảng dịch vụ của mình với Google Cloud Platform
bằng cách dùng lệnh:
gcloud auth activate-service-account --key-file=service-account-key-file
Về cách lấy service-account-key-file có thể xem lại tại mục 2.2
Sau khi đã xác thực được tài khoảng với Google Cloud Platform ta cần
lấy access tokien bằng cách gõ lệnh:
gcloud auth application-default print-access-token
Một access token sẽ được in ra màng hình. Ta cần lưu lại token đó để dễ
dàng sử dụng sau này.
Cuối cùng ta dùng lệnh curl để gửi dữ liệu cần chuyển đổi lên Google Cloud để
nó tiến hành quá trình chuyển đổi:
curl -s -H "Content-Type: application/json" 
-H "Authorization: Bearer access_token"
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 20
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
https://speech.googleapis.com/v1/speech:recognize
 -d @sync-request.json
Sau khi chuyển đổi hoàn tất. Google Cloud Platform sẽ trả về cho ta 1 file json
chứa giá trị kết quả.
{
"results": [
{
"alternatives": [
{
"transcript": "how old is the Brooklyn Bridge",
"confidence": 0.98267895
}
]
}
]
}
Như ở file kết quả. Chúng ta thấy được từ file audio ban đầu đã trả về lại kết quả là
đoạn transcript “How old is the brooklyn Bridge” với độ tin tưởng là 98,27%
2.3 GOOGLE ASSISTANT LÀ GÌ?
Google Assistant là một trợ lý cá nhân ảo được phát triển bởi Google và được
giới thiệu tại hội nghị nhà phát triển của hãng vào tháng 5 năm 2016. Không giống như
Google Now, Google Assistant có thể tham gia các cuộc trò chuyện hai chiều.
Hình 2.19 Logo Google Assistant
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 21
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
Assistant ban đầu được đưa vào ứng dụng nhắn tin Google Allo, và loa thông
minh Google Home. Sau một thời gian chỉ có mặt trên hai chiếc điện thoại thông minh
Pixel và Pixel XL của hãng, Google bắt đầu triển khai Assistant trên các thiết bị
Android khác vào tháng 2 năm 2017, bao gồm cả các điện thoại thông minh bên thứ ba
và các thiết bị Android Wear, và được phát hành dưới dạng ứng dụng riêng biệt trên
iOS vào tháng 5. Cùng với sự ra mắt một bộ phát triển phần mềm vào tháng 4 năm
2017, Assistant đã và đang được tiếp tục mở rộng hỗ trợ cho một lượng lớn thiết bị,
bao gồm cả xe hơi và các thiết bị nhà thông minh. Các chiéc năng của Assistant cũng
có thể được bổ sung bởi các nhà phát triển bên thứ ba.
Người dùng chủ yếu có thể tương tác với Google Assistant qua giọng nói tự
nhiên, hoặc có thể nhập qua bàn phím. Các chức năng cơ bản của nó cũng tương tự
như Google Now, như tìm kiếm trên Internet, đặt sự kiện trên lịch và báo thức, điều
chỉnh cài đặt phần cứng trên thiết bị người dùng và hiển thị thông tin từ tài khoản
Google của người dùng. Google cũng bổ sung các tính năng khác cho Assistant bao
gồm khả năng nhận diện vật thể và thu thập thông tin về vật thể thông qua máy ảnh
của thiết bị, cùng với việc hỗ trợ mua sản phẩm và chuyển tiền.
Google Assistant, với các chức năng cơ bản tương tự như Google Now, có thể
tìm kiếm trên Internet, đặt lịch sự kiện và báo thức, điều chỉnh cài đặt phần cứng trên
thiết bị của người dùng, và hiển thị thông tin từ tài khoản Google của người dùng.
Không giống như Google Now, Assistant có thể tham gia các cuộc trò chuyện hai
chiều giữa phần mềm và người dùng, sử dụng thuật toán xử lý ngôn ngữ tự nhiên của
Google. Các kết quả tìm kiếm được hiển thị theo dạng thẻ, người dùng có thể nhấp vào
để mở trang. Google Assistant có thể lập một danh sách mua sắm; tính năng này từng
được áp dụng trên dịch vụ ghi chú Google Keep, nhưng sau đó được chuyển sang
Google Express và ứng dụng Google Home vào tháng 4 năm 2017.
Để sử dụng google assistant chúng ta sử dụng source code từ chính
assistant sdk do chính google cloud cung cấp tại địa chỉ:
https://github.com/googlesamples/assistant-sdk-python/blob/master/google-
assistant-sdk/googlesamples/assistant/library/hotword.py
Ở đây chúng ta chú ý các sự kiện sẽ xảy ra để có thể tinh chỉnh code lại theo
ý của mình.
Ở class google.assistant.library.event.EventType ta có các sự kiện sau:
ON_START_FINISHED = 0
Sự kiện này thông báo quá trình khởi động hoàn tất.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 22
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
ON_CONVERSATION_TURN_STARTED = 1 Sự
kiện này thông báo quá trình chuyển đổi bắt đầu.
ON_CONVERSATION_TURN_TIMEOUT = 2
Sự kiện này thông báo quá trình chuyển đổi đã bị quá hạn
ON_END_OF_UTTERANCE = 3
Sự kiện này thông báo google assistant đã dừng việc lắng nghe người dùng. Google
assistant không nhận thêm dữ liệu từ người dùng nữa.
ON_RECOGNIZING_SPEECH_FINISHED = 5
Sự kiện này thông báo google assistant đã hoàn tất quá trình chuyển đổi.
ON_RESPONDING_STARTED = 6
Sự kiện này thông báo google assistant bắt đầu trả lời yêu cầu của người dùng
ON_RESPONDING_FINISHED = 7
Sự kiện này thông báo google assistant đã hoàn tất việc trả lời yêu cầu của người dùng
ON_NO_RESPONSE = 8
Sự kiện này thông báo google assistant đã hoàn thành yêu cầu của người dùng nhưng
không có tín hiệu trả lời.
ON_CONVERSATION_TURN_FINISHED = 9
Sự kiện này thông báo lượt sử dụng này đã hết.
ON_ALERT_STARTED = 10
Sự kiện này thông báo tín hiệu báo động được mở.
ON_ALERT_FINISHED = 11
Sự kiện này thông báo tín hiệu báo động đã kết thúc.
Sự kiện quan trọng chúng ta cần chú ý để thực hiện project này là
ON_RECOGNIZING_SPEECH_FINISHED. Khi người dúng nhập dữ liệu dạng âm
thanh vào thiết bị. Thì sự kiện này thông báo quá trình chuyển đổi dữ liệu âm thanh
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 23
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT
sang văn bản đã hoàn tất. Chúng ta có thể lấy dữ liệu văn bản ở bước này để tiến
thành các hành động mà ta muốn.
Ví dụ:
if event.type == EventType.ON_RECOGNIZING_SPEECH_FINISHED:
temp = event.args
if temp["text"] == "fan on":
print("Turnning Fan On")
assistant.stop_conversation()
elif temp["text"] == "fan off":
print("Turnning Fan Off")
assistant.stop_conversation()
elif temp["text"] == "light on":
print("Turning Light On")
assistant.stop_conversation()
elif temp["text"] == "light off":
print("Turning Light Off")
assistant.stop_conversation()
Trong ví dụ trên ta bắt các trường hợp khi người dùng nói câu “fan on” hoặc
“fan off” để tiến hành bật, tắt quạt máy một cách tự động.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 24
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
3.1 Khởi tạo website
3.1.1 Ngôn ngữ PHP
PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập trình
kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho
máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có
thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc
độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm
tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một
ngôn ngữ lập trình web phổ biến nhất thế giới.
Thẻ <?php và thẻ ?> sẽ đánh đấu sự bắt đầu và sự kết thúc của phần mã PHP
qua đó máy chủ biết để xử lý và dịch mã cho đúng. Đây là một điểm khá tiện lợi của
PHP giúp cho việc viết mã PHP trở nên khá trực quan và dễ dàng trong việc xây dựng
phần giao diện ứng dụng HTTP.
Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và
có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập
nên nhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô doanh
nghiệp.
Hình 3.1 Logo ngôn ngữ PHP
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 25
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
PHP 3
PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi với các
phiên bản PHP mà chúng ta được biết ngày nay. Nó đã được Andi Gutmans và Zeev
Suraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trước đó. Lý do chính
mà họ đã tạo ra phiên bản này là do họ nhận thấy PHP/FI 2.0 hết sức yếu kém trong
việc phát triển các ứng dụng thương mại điện tử mà họ đang xúc tiến trong một dự án
của trường đại học. Trong một nỗ lực hợp tác và bắt đầu xây dựng dựa trên cơ sở
người dùng đã có của PHP/FI, Andi, Rasmus và Zeev đã quyết định hợp tác và công
bố PHP 3.0 như là phiên bản thế hệ kế tiếp của PHP/FI 2.0, và chấm dứt phát triển
PHP/FI 2.0.
Một trong những sức mạnh lớn nhất của PHP 3.0 là các tính năng mở rộng
mạnh mẽ của nó. Ngoài khả năng cung cấp cho người dùng cuối một cơ sở hạ tầng
chặt chẽ dùng cho nhiều cơ sở dữ liệu, giao thức và API khác nhau, các tính năng mở
rộng của PHP 3.0 đã thu hút rất nhiều nhà phát triển tham gia và đề xuất các mô đun
mở rộng mới. Hoàn toàn có thể kết luận được rằng đây chính là điểm mấu chốt dẫn
đến thành công vang dội của PHP 3.0. Các tính năng khác được giới thiệu trong PHP
3.0 gồm có hỗ trợ cú pháp hướng đối tượng và nhiều cú pháp ngôn ngữ nhất quán
khác.
Ngôn ngữ hoàn toàn mới đã được công bố dưới một cái tên mới, xóa bỏ mối
liên hệ với việc sử dụng vào mục đích cá nhân hạn hẹp mà cái tên PHP/FI 2.0 gợi
nhắc. Nó đã được đặt tên ngắn gọn là 'PHP', một kiểu viết tắt hồi quy của "PHP:
Hypertext Preprocessor".
Vào cuối năm 1998, PHP đã phát triển được con số cài đặt lên tới hàng chục
ngàn người sử dụng và hàng chục ngàn Web site báo cáo là đã cài nó. Vào thời kì đỉnh
cao, PHP 3.0 đã được cài đặt cho xấp xỉ 10% số máy chủ Web có trên mạng Internet.
PHP 3.0 đã chính thức được công bố vào tháng 6 năm 1998, sau thời gian 9
tháng được cộng đồng kiểm nghiệm.
PHP 4
Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức được công bố, Andi
Gutmans và Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõi của PHP. Mục
đích thiết kế là nhằm cải tiến tốc độ xử lý các ứng dụng phức tạp, và cải tiến tính mô
đun của cơ sở mã PHP. Những ứng dụng như vậy đã chạy được trên PHP 3.0 dựa trên
các tính năng mới và sự hỗ trợ khá nhiều các cơ sở dữ liệu và API của bên thứ ba,
nhưng PHP 3.0 đã không được thiết kế để xử lý các ứng dụng phức tạp như thế này
một cách có hiệu quả.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 26
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
Một động cơ mới, có tên 'Zend Engine' (ghép từ các chữ đầu trong tên của Zeev
và Andi), đã đáp ứng được các nhu cầu thiết kế này một cách thành công, và lần đầu
tiên được giới thiệu vào giữa năm 1999. PHP 4.0, dựa trên động cơ này, và đi kèm với
hàng loạt các tính năng mới bổ sung, đã chính thức được công bố vào tháng 5 năm
2000, gần 2 năm sau khi bản PHP 3.0 ra đời. Ngoài tốc độ xử lý được cải thiện rất
nhiều, PHP 4.0 đem đến các tính năng chủ yếu khác gồm có sự hỗ trợ nhiều máy chủ
Web hơn, hỗ trợ phiên làm việc HTTP, tạo bộ đệm thông tin đầu ra, nhiều cách xử lý
thông tin người sử dụng nhập vào bảo mật hơn và cung cấp một vài các cấu trúc ngôn
ngữ mới.
Với PHP 4, số nhà phát triển dùng PHP đã lên đến hàng trăm nghìn và hàng
triệu site đã công bố cài đặt PHP, chiếm khoảng 20% số tên miền trên mạng Internet.
Nhóm phát triển PHP cũng đã lên tới con số hàng nghìn người và nhiều nghìn
người khác tham gia vào các dự án có liên quan đến PHP như PEAR, PECL và tài liệu
kĩ thuật cho PHP.
PHP 5
Sự thành công hết sức to lớn của PHP 4.0 đã không làm cho nhóm phát triển
PHP tự mãn. Cộng đồng PHP đã nhanh chóng giúp họ nhận ra những yếu kém của
PHP 4 đặc biệt với khả năng hỗ trợ lập trình hướng đối tượng (OOP), xử lý XML,
không hỗ trợ giao thức máy khách mới của MySQL 4.1 và 5.0, hỗ trợ dịch vụ web yếu.
Những điểm này chính là mục đích để Zeev và Andi viết Zend Engine 2.0, lõi của PHP
5.0. Một thảo luận trên Slashdot đã cho thấy việc phát triển PHP 5.0 có thể đã bắt đầu
vào thời điểm tháng 12 năm 2002 nhưng những bài phỏng vấn Zeev liên quan đến
phiên bản này thì đã có mặt trên mạng Internet vào khoảng tháng 7 năm 2002. Ngày
29 tháng 6 năm 2003, PHP 5 Beta 1 đã chính thức được công bố để cộng đồng kiểm
nghiệm. Đó cũng là phiên bản đầu tiên của Zend Engine 2.0. Phiên bản Beta 2 sau đó
đã ra mắt vào tháng 10 năm 2003 với sự xuất hiện của hai tính năng rất được chờ đợi:
Iterators, Reflection nhưng namespaces một tính năng gây tranh cãi khác đã bị loại
khỏi mã nguồn. Ngày 21 tháng 12 năm 2003: PHP 5 Beta 3 đã được công bố để kiểm
tra với việc phân phối kèm với Tidy, bỏ hỗ trợ Windows 95, khả năng gọi các hàm
PHP bên trong XSLT, sửa chữa nhiều lỗi và thêm khá nhiều hàm mới. PHP năm bản
chính thức đã ra mắt ngày 13 tháng 7 năm 2004 sau một chuỗi khá dài các bản kiểm
tra thử bao gồm Beta 4, RC 1, RC2, RC3. Mặc dù coi đây là phiên bản sản xuất đầu
tiên nhưng PHP 5.0 vẫn còn một số lỗi trong đó đáng kể là lỗi xác thực HTTP.
Ngày 14 tháng 7 năm 2005, PHP 5.1 Beta 3 được PHP Team công bố đánh dấu
sự chín muồi mới của PHP với sự có mặt của PDO, một nỗ lực trong việc tạo ra một
hệ thống API nhất quán trong việc truy cập cơ sở dữ liệu và thực hiện các câu truy
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 27
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
vấn. Ngoài ra, trong PHP 5.1, các nhà phát triển PHP tiếp tục có những cải tiến trong
nhân Zend Engine 2, nâng cấp mô đun PCRE lên bản PCRE 5.0 cùng những tính năng
và cải tiến mới trong SOAP, streams và SPL.
PHP 7
Hiện nay phiên bản tiếp theo của PHP đang được phát triển, PHP sáu bản sử
dụng thử đã có thể được download tại địa chỉ http://snaps.php.net. Phiên bản PHP 6
được kỳ vọng sẽ lấp đầy những khiếm khuyết của PHP ở phiên bản hiện tại, ví dụ: hỗ
trợ namespace (hiện tại các nhà phát triển vẫn chưa công bố rõ ràng về vấn đề này); hỗ
trợ Unicode; sử dụng PDO làm API chuẩn cho việc truy cập cơ sở dữ liệu, các API cũ
sẽ bị đưa ra thành thư viện PECL...
3.1.2 Phương thức GET and POST
3.1.2.1 Phương thức GET
Phương thức GET là phương thức gửi dữ liệu thông qua đường dẫn URL nằm
trên thanh địa chỉ của Browser. Server sẽ nhận đường dẫn đó và phân tích trả về kết
quả cho bạn. Server sẽ phân tích tất cả những thông tin đằng sau dấu hỏi (?) chính là
phần dữ liệu mà Client gửi lên.
Ví dụ: Với URL freetuts.net?id=12 thì Server sẽ nhận được giá trị id = 12
Để truyền nhiều dữ liệu lên Server ta dùng dấu & để phân cách giữa các cặp giá
trị. Giả sử tôi muốn truyền id = 12 và title = ‘method_get’ thì URL sẽ có dạng
freetuts.net?id=12&title=method_get. Lưu ý với các bạn là vị trí các cặp giá trị không
quan trọng, nghĩa là cặp title có thể nằm trước cặp id cũng được.
Tất cả các dữ liệu mà Client gửi lên bằng phương thức GET đều được lưu trong
một biến toàn cục mà PHP tự tạo ra đó là biến $_GET, biến này là kiểu mảng kết hợp
lưu trữ danh sách dữ liệu từ client gửi lên theo quy luật key => value. Ví du với URL
freetuts.net?id=12&title=method_get thì dữ liệu sẽ được lưu trong biến $_GET dưới
dạng:
$_GET = array(
'id' => '12',
'title' => 'method_get'
);
Vì thế để lấy dữ liệu thì ta chỉ cần làm như sau:
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 28
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
// Lấy ID
$id = $_GET['id'];
echo $id; // kết quả là 12
// Lấy title
$title = $_GET['title'];
echo $title; // kết quả là method_get
3.1.2.2 Phương thức POST
Với phương thức GET thì dữ liệu được thấy trên URL thì phương thức POST
thì hoàn toàn ngược lại, POST sẽ gửi dữ liệu qua một cái form HTML và các giá trị sẽ
được định nghĩa trong các input gồm các kiểu (textbox, radio, checkbox, password,
textarea, hidden) và được nhận dang thông qua tên (name) của các input đó.
Tất cả các dữ liệu gửi bằng phương thức POST đều được lưu trong một biến
toàn cục $_POST do PHP tự tạo ra, vì thế để lấy dữ liệu thì bạn chỉ cần lấy trong biến
này là được. Cũng như lưu ý với các bạn là trước khi lấy phải dùng hàm
isset($bien) để kiểm tra có hay không nhé.
if (isset($_POST['id'])){
$id = $_POST['id'];
}
3.2.3.3 So sánh GET và POST
Giống nhau:
Đều gửi dữ liệu lên Server
Khác nhau:
Phương thức POST bảo mật hơn GET vì dữ liệu được gửi ngầm bằng mắt
thường không thể nhìn thấy được.
Phương thức GET dữ liệu được gửi tường minh, chúng ta có thể thấy trên URL
nên nó không bảo mật.
Phương thức GET luôn luôn nhanh hơn POST vì dữ liệu gửi đi được Browser
giữ lại trong cache. Khi thực thi với POST thì Server luôn thực thi lệnh rồi trả về cho
Client, còn với GET thì Browser sẽ kiểm tra trong cache có chưa, nếu có thì trả về
ngay chứ không cần gửi lên Server.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 29
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
Khi nào dùng GET - POST
Khi dữ liệu bạn muốn SEO thì phải sử dụng phương thức GET.
Khi dữ liệu bạn không cần bảo mật thì dùng phương thức GET, ngược lại dữ
liệu bảo mật thì dùng phương thức POST.
Ví dụ khi đăng nhập, Comment, đăng tin dùng phương thức POST. Còn khi lấy
tin ra thì dùng phương thức GET…
Khi request sử dụng câu lệnh select thì dùng GET, khi request có sử dụng lệnh
insert update, delete thì nên dùng POST.
3.1.3 Cơ sở dữ liệu
3.1.3.1 Định nghĩa:
Là một tập hợp thông tin có cấu trúc. Tuy nhiên, thuật ngữ này thường dùng
trong công nghệ thông tin và nó thường được hiểu rõ hơn dưới dạng một tập hợp liên
kết các dữ liệu, thường đủ lớn để lưu trên một thiết bị lưu trữ như đĩa hay băng. Dữ
liệu này được duy trì dưới dạng một tập hợp các tập tin trong hệ điều hành hay được
lưu trữ trong các hệ quản trị cơ sở dữ liệu.
3.1.3.2. Ưu điểm:
- Giảm sự trùng lặp thông tin xuống mức thấp nhất. Do đó đảm bảo thông
tin có tính nhất quán và toàn vẹn dữ liệu.
- Đảm bảo dữ liệu có thể được truy xuất theo nhiều cách khác nhau.
- Nhiều người có thể sử dụng một cơ sở dữ liệu.
3.1.3.3. Nhược điểm:
- Tính chủ quyền của dữ liệu:
• Thể hiện ở phương diện an toàn dữ liệu.
• Khả năng biểu diễn mỗi liên hệ ngữ nghĩa của dữ liệu và tính chính xác của
dữ liệu.
• Người khai thác cơ sở dữ liệu phải cập nhật cho CSDL những thông tin mới
nhất.
- Tính bảo mật và quyền khai thác thông tin của người sử dụng:
• Do ưu điểm CSDL có thể cho nhiều người khai thác đồng thời. nên cần phải
có một cơ chế bảo mật phân quyền khai thác CSDL.
• Các hệ điều hành nhiều người sử dụng hay cục bộ đều cung cấp cơ chế
này. - Tranh chấp dữ liệu:
• Khi nhiều người cùng truy nhập CSDL với các mục đích khác nhau. Rất có
thể sẽ xảy ra hiện tượng tranh chấp dữ liệu.
• Cần có cơ chế ưu tiên khi truy cập CSDL. Ví dụ: admin luôn có thể truy cập
cơ sở dữ liệu.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 30
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
• Cấp quyền ưu tiên cho từng người khai thác. -
Cần đảm bảo an toàn dữ liệu khi có sự cố:
• Khi CSDL nhiều và được quản lý tập trung. Khả năng rủi ro mất dữ liệu rất
cao. Các nguyên nhân chính là mất điện đột ngột hoặc hỏng thiết bị lưu trữ.
• Hiện tại có một số hệ điều hành đã có cơ chế tự động sao lưu ổ cứng và fix
lỗi khi có sự cố xảy ra.
• Tuy nhiên: cẩn tắc vô áy náy. Chúng ta nên sao lưu dự phòng cho dữ liệu đề
phòng trường hợp xấu xảy ra.
3.1.3.4 Sử Dụng Cơ Sở Dữ Liệu MySQL
Tạo bảng:
Lệnh để tạo một bảng dữ liệu trong MySQL cần bao gồm:
Tên bảng
Tên các trường
Định nghĩa cho mỗi trường
Cú pháp
Dưới đây là cú pháp SQL cơ bản để tạo một bảng trong MySQL:
CREATE TABLE ten_bang (ten_cot kieu_du_lieu_cucot);
Dưới đây là ví dụ để tạo một bảng có tên là sinhvienk60 với các trường
mssv, ho, ten, tuoi, diemthick trong cơ sở dữ liệu sinhvien:
Ghi chú: Nếu bạn có nhiều cơ sở dữ liệu, thì để tạo bảng sinhvienk60 có
trong cơ sở dữ liệu sinhvien thì trước hết bạn phải chọn cơ sở dữ liệu đó với
lệnh USE.
CREATE TABLE sinhvienk60 (
mssv INT NOT NULL AUTO_INCREMENT,
ho VARCHAR(255) NOT NULL, ten
VARCHAR(255) NOT NULL,
tuoi INT NOT NULL,
diemthi FLOAT(4,2) NOT NULL,
PRIMARY KEY (mssv)
);
Một số khái niệm cần giải thích:
Thuộc tính NOT NULL của trường đang được sử dụng bởi vì chúng ta
không muốn trường này là NULL. Vì thế, nếu người dùng cố gắng tạo một bản
ghi có giá trị NULL, thì MySQL sẽ tạo một lỗi.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 31
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
Thuộc tính AUTO_INCREMENT nói cho MySQL tự động tăng khóa
chính và thêm giá trị có sẵn tiếp theo tới trường id.
Từ khóa PRIMARY KEY được sử dụng để định nghĩa một cột là
PRIMARY KEY (khóa chính). Bạn có thể sử dụng nhiều cột phân biệt nhau bởi
dấu phảy để định nghĩa một PRIMARY KEY.
Xóa bảng:
Để xóa một bảng trong MySQL đang tồn tại là khá đơn giản, nhưng bạn
cần thật cẩn thận trong khi xóa bất kỳ bảng nào, bởi vì bạn sẽ mất toàn bộ dữ
liệu đã được lưu giữ trong bảng đó và không thể phục hồi lại được.
Cú pháp SQL chung để xóa một bảng MySQL là:
DROP TABLE ten_bang;
Ví dụ
Để xóa bảng sinhvienk60 đã tạo ở chương trước, bạn sử dụng:
DROP TABLE sinhvienk60;
CHÈN ( INSERT INTO):
Để chèn dữ liệu vào trong bảng MySQL, bạn sẽ cần sử dụng lệnh SQL là
INSERT INTO.
Cú pháp SQL cơ bản của lệnh INSERT INTO để chèn dữ liệu vào trong
bảng MySQL là:
INSERT INTO ten_bang ( truong1, truong2,...truongN )
VALUES
( giatri1, giatri2,...giatriN );
Để chèn kiểu dữ liệu chuỗi, điều bắt buộc là bạn phải giữ tất cả giá trị
trong các trích dẫn đơn hoặc trích dẫn kép, ví dụ: "giatri".
CHỌN ( SELECT):
Lệnh SELECT trong SQL được sử dụng để lấy dữ liệu từ
MySQL Database.
Cú pháp SQL cơ bản của lệnh SELECT để lấy dữ liệu từ bảng MySQL
là:
SELECT truong1, truong2,...truongN FROM ten_bang
[menhDe WHERE]
[OFFSET M ][LIMIT N]
Bạn có thể lấy một hoặc nhiều trường trong một lệnh SELECT đơn.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 32
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
Bạn có thể xác định một dấu sao (*) thay cho các trường. Trong
trường hợp này, lệnh SELECT sẽ trả về tất cả các trường.
Bạn có thể xác định bất kỳ điều kiện nào bởi sử dụng mệnh đề WHERE.
Bạn có thể xác định một offset bởi sử dụng OFFSET để từ đó lệnh
SELECT này sẽ bắt đầu trả về các bản ghi. Theo mặc định, offset là 0.
Bạn có thể giới hạn số kết quả trả về bởi sử dụng thuộc tính LIMIT.
Ví dụ để lấy dữ liệu trong một bảng trong MySQL
Sau đây là ví dụ để lấy tất cả bản ghi có trong bảng sinhvienk60 có
trong cơ sở dữ liệu sinhvien trong MySQL:
SELECT * FROM sinhvienk60;
Kết quả như sau:
Hình 3.2 Truy vấn SELECT trong MySQL
CẬP NHẬT (SELECT):
Dữ liệu đang tồn tại trong một bảng MySQL có thể cần được sửa đổi.
Bạn có thể thực hiện điều này bởi sử dụng lệnh UPDATE trong SQL. Lệnh này
sẽ sửa đổi bất kỳ giá trị trường nào trong bất cứ bảng MySQL nào.
Dưới đây là cú pháp SQL chung của lệnh UPDATE để sửa đổi dữ liệu
trong bảng MySQL:
UPDATE ten_bang SET truong1=giaTri_moi_1, truong2=giaTri_moi_2
[MenhDe WHERE];
Bạn có thể cập nhật một hoặc nhiều trường.
Bạn có thể xác định bất kỳ điều kiện nào bởi sử dụng mệnh đề WHERE.
Bạn có thể cập nhật các giá trị trong một bảng đơn tại một thời điểm.
Mệnh đề WHERE là hữu ích khi bạn muốn cập nhật các hàng đã chọn
trong một bảng.
Cập nhật dữ liệu trong MySQL
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 33
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
Bạn sử dụng lệnh UPDATE với mệnh đề WHERE trong SQL để
cập nhật dữ liệu đã chọn vào trong bảng MySQL. Ví dụ:
Ví dụ sau sẽ cập nhật bản ghi có mssv là 3 trong trường ten trong bảng
sinhvienk60:
UPDATE sinhvienk60 SET ten="Huong" WHERE mssv=3;
Nếu bạn sử dụng lệnh SELECT với bảng trên:
SELECT * FROM sinhvienk60;
Thì kết quả là bản ghi có mssv=3 đã thay đổi tên từ Manh thành Hương.
Hình 3.3 Truy vấn UPDATE trong MySQL
3.1.4 Giao diện Website (Front end)
Bootstrap là một framework cho phép thiết kế website reponsive nhanh hơn và
dễ dàng hơn
Bootstrap là bao gồm các HTML templates, CSS templates và Javascript tao ra
những cái cơ bản có sẵn như: typography, forms, buttons, tables, navigation, modals,
image carousels và nhiều thứ khác. Trong bootstrap có thêm các plugin Javascript
trong nó. Giúp cho việc thiết kế reponsive của bạn dễ dàng hơn và nhanh chóng hơn.
Lịch sử Bootstrap
Bootstrap là dược phát triển bởi Mark Otto và Jacob Thornton tại Twitter. Nó
được xuất bản như là một mã nguồn mở vào tháng 8 năm 2011 trên GitHub. Tính ra
đến thời điểm mình viết bài viết này nó cũng đã phát triển được 3 năm rồi. Bản
bootstrap mới nhất bây giờ là bootstrap 3.
Tại sao bạn nên sử dụng Bootstrap?
Những điểm thuận lợi khi bản sử dụng bootstrap:
Rất dễ để sử dụng: Nó đơn giản vì nó được base trên HTML, CSS và Javascript
chỉ cẩn có kiến thức cơ bản về 3 cái đó là có thể sử dụng bootstrap tốt.
Tính năng Responsive: Bootstrap’s xây dựng sẵn reponsive css trên các thiết
bị phones, tablets, và desktops
Mobile: Trong Bootstrap 3 mobile-first styles là một phần của core framework
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 34
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
Tương thích với trình duyệt: Nó tương thích với tất cả các trình duyệt (Chrome,
Firefox, Internet Explorer, Safari, and Opera) nhưng lưu ý vì em IE vẫn rất hãm với IE
phiên bản cũ vì thế việc IE9 hay IE8 đổ xuống không support là chuyện bình thường.
Các bạn có dùng nên luy ý điểm này theo như mình dùng làm dự án thì nó support
tuyệt vời trên IE10 đổ lên nhé, thấp nhất có lẽ là IE9 thôi còn IE8 thì không nên xài
nhé.
Lấy Bootstrap từ đâu?
Có 2 cách để bạn có thể sử dụng Bootstrap trên web của bạn.
Download Bootstrap từ getbootstrap.com
Thêm Bootstrap từ CDN
Note: cái này là kinh nghiệm thôi chia sẻ với mọi người là nên “Thêm nó từ
CDN” vì theo như các diễn đàn chia sẻ thì nó có sẵn các cơ chế cache trên máy như
thế sẽ không mất thời gian tải lại file nữa mà dùng luôn, còn không thì mỗi lần vào site
mình lại phải tải bootstrap về sẽ mất time load trang.
3.2 Triển khai webserver lên server thật.
3.2.1 Hosting
● Hosting là dịch vụ lưu trữ dữ và chia sẻ liệu trực tuyến, là không gian trên
máy chủ có cài đặt các dịch vụ Internet như world wide web (www), truyền file (FTP),
Mail… ,bạn có thể chứa nội dung trang web hay dữ liệu trên không gian đó.
Ví dụ: Bình thường bạn có 1 file trong máy tính, trong Localhost của bạn, giờ
bạn muốn cho người khác xem thì bạn cần tải file đó lên mạng, nơi để lưu trữ file đó
gọi là hosting.
● Các loại hosting
– Shared hosting: Chia sẻ host
– Collocated hosting: Thuê chỗ đặt máy chủ
– Dedicated Server: Máy chủ dùng riêng
– Virtual Private Server: VPS là máy chủ riêng
ảo ● Các thông số cần biết trong hosting
– Hệ điều hành (OS) của máy chủ : hiện tại có hai loại OS thông dụng là Linux
và Windows.
+ Hosting Linux: là Hosting chuyên hỗ trợ ngôn ngữ lập trình PHP, Joomla,
các mã nguồn mở…
+ Hosting Windows: Hosting Windows chuyên hỗ trợ về ngôn ngữ lập trình
ASP, ASP.Net, HTML …. vì các Ngôn ngữ này, chạy chuyên trên Hosting Windows,
do vậy khi load Web sẽ hỗ trợ tốt hơn, Hosting Windows có hỗ trợ ngôn ngữ PHP,
nhưng chủ yếu, là hỗ trợ chính là ASP …
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 35
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
– Dung lượng: Bộ nhớ lưu trữ cho phép bạn tải file lên host
– Băng thông: Bandwidth (băng thông) là thông số chỉ dung lượng thông tin tối
đa mà website được lưu chuyển qua lại mỗi tháng
– PHP: Phiên bản php hỗ trợ
– Max file: Số lượng file tối đa có thể upload lên host
– RAM: Bộ nhớ đệm
– Addon domain: Số lượng domain bạn có thể trỏ tới hosting
– Subdomain: Số lượng tên miền phụ có thể tạo ra cho mỗi tên miền
– Park domain: Số lượng tên miền có thể parking
– Email accounts: Số lượng email đi kèm với hosting
– FTP accounts: Số lượng FTP account bạn có thể tạo và dùng nó upload dữ
liệu lên hosting
● Tại sao cần phải mua hosting ?
Nếu không có hosting thì website sẽ chỉ hoạt động trên máy tính bạn mà thôi,
chỉ có mình bạn nhìn thấy, dữ liệu sẽ không được chia sẻ trên mạng. Vậy nên rất cần
thiết để có một gói hosting.
3.2.2 Tên Miền ( Domain)
Mục đích chính của tên miền là để cung cấp một hình thức đại diện, hay nói
cách khác, dùng những tên dễ nhận biết, thay cho những tài nguyên Internet mà đa số
được đánh địa chỉ bằng số. Cách nhìn trừu tượng này cho phép bất kỳ tài nguyên nào
(ở đây là website) đều có thể được di chuyển đến một địa chỉ vật lý khác trong cấu trúc
liên kết địa chỉ mạng, có thể là toàn cầu hoặc chỉ cục bộ trong một mạng intranet, mà
trên thực tế là đang làm thay đổi địa chỉ IP. Việc dịch từ tên miền sang địa chỉ IP (và
ngược lại) do hệ thống DNS trên toàn cầu thực hiện.
3.2.3 Cpanel và File Manager
Sau khi đăng kí một hosting chúng ta sẽ được cung cấp một trang cpanel
để quản lí website của mình. Ngoài ra còn có một chương trình File Manager để ta tiến
hành upload mã nguồn website của mình vào đó.
Để tải lên mã nguồn website của mình ta làm như sau:
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 36
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
Bước 1: Đăng nhập vào Cpanel và ấn vào biểu tượng File manager để mở
trình quản lý File của Cpanel.
Hình 3.4 File Manager trong cPanel
Mở quản lý file Manager trong cPanel
Bước 2: Truy cập vào thư mục cần upload file lên và ấn vào Upload.
Trong giao diện File Manager của cPanel, các bạn có thể thao tác click
chọn thư mục, tập tin, ấn Ctrl để chọn nhiều đối tượng, click đúp để truy cập
một như mục, bôi đen hàng loạt để xóa và thực hiện các thao tác copy paste
giống như trong window.
Hãy tới thư mục mẹ cần upload lên và ấn vào nút Upload. Sau khi ấn,
giao diện upload file của cPanel sẽ hiện ra , chúng ta sẽ chuyển tới bước 3 để
thực hiện tiếp.
Hình 3.5 Option Upload trong File Manager
Giao diện File Manager
Bước 3: Chọn file và upload.
Sau khi giao diện Upload file hiện ra, các bạn có thể lập tức chọn Select
File để up lên host luôn mà không cần suy nghĩ.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 37
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER
Nếu bạn muốn ghi đè lên File trùng, hãy chọn Overwrite exitsting files.
Nếu không chọn mục này, khi gặp file trùng hệ thống cũng vẫn thông báo và
hỏi bạn có ghi đè hay không.
Các bạn hoàn toàn có thể upload nhiều file cùng lúc trên giao diện này của
cPanel.
Hình 3.6 Giao diện Upload file trong cPanel
Sau khi đã tiến hành up xong tất cả các file, ấn vào Go Back to
“/home/yourname/public_html/thumuc” để quay lại trang quản lý file.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 38
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ
THỐNG 4.1 Phần Cứng
4.1.1 Các linh kiện cần có:
• Máy tính nhúng Raspberry Pi 3 để xử lí tín hiệu nhập vào ra điều
khiển thiết bị ở ngỏ ra.
Hình 4.1 Máy tính nhúng Rasberry Pi 3
• Loa để thể hiện phản hổi từ hệ thống google assistant.
Hình 4.2 Loa
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 39
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG
• Microphone để thu tín hiệu điều khiển từ người dùng.
Hình 4.3 Microphone mini
• Usb sound card để giải mã tín hiệu tương tự của microphone
sang tín hiệu số cho raspberry pi xử lí.
Hình 4.4 USB SOUND CARD
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 40
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG
• Relay để rasberry pi có thể điều khiển các thiết bị điện gia dụng
cho nhà.
Hình 4.5 Relay
4.1.2 Sơ đồ kết nối
Các linh kiện được kết nối theo sơ đồ sau:
Hình 4.6 Sơ đồ kết nối của Raspberry pi với Relay
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 41
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG
Hình 4.7 Kết nối giữa Raspberry Pi với loa và microphone
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 42
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG
4.1.3 Nguyên mẫu thành phẩm
Hình 4.8 Các thành phần sau khi được lắp ghép vào nhau.
Hình 4.9 Mô hình khi đã hoàn thiện
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 43
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG
4.2 Phần mềm
4.2.1 Chương trình nhận diện giọng nói trên raspberry pi
Đầu tiên ta tải source code của đề tài này tại địa chỉ sau:
github.com/trthong95/thesis
Tiếp đó ta cài các gói thư viện cần thiết cho thư viện bằng lệnh:
pip install -r requirements.txt
Sau khi các gói thư viện đã được cài đặt ta chạy chương trình chính như sau:
python hotword.py
Khi chương trình được khởi động thành công thì console sẽ hiển thị như hình
sau:
Hình 4.10 Khởi động chương trình thành công
Khi người dùng nói “Ok google” hoặc “Hey google” thì ứng dụng sẽ hiển thị
như sau. Thông báo quá trình ghi âm lệnh điều khiển bắt đầu.
Hình 4.11 Quá nhận dạng giọng nói bắt đầu
Khi đã nhận được lệnh điều khiển và tiến hành chuyển đổi sang văn bản. Ứng
dụng sẽ trả về dữ liệu có “text” như hình và thông báo có yêu cầu người dùng nhập
lệnh tiếp theo hoặc dừng lại.
Hình 4.12 Toàn bộ 1 phiên hoạt động của google assistant
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 44
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG
Như ví dụ ở trên thì google assistant đã nhận được từ “hello” và chuyển nó sang
dạng văn bản.
Để bật tắt các thiết bị trong nhà ta dùng các cú pháp lệnh như sau khi sử dụng:
“Turn the light on” – Dùng để bật đèn
“Turn the light off” – Dùng để tắt đèn
“Turn the fireplace on” – Dùng để bật lò sưởi
“Turn the fireplace off” – Dùng để tắt lò sưởi
“Turn the air conditioner on” – Dùng để bật máy lạnh
“Turn the air conditioner off” – Dùng đẻ tắt máy lạnh
4.2.2 Hệ thống website và cách sử dụng
Truy cập trang web tại địa chỉ: https://toitulam.online/thesis
Hình 4.13 Giao diện chính của trang web
Nội dung trang web có thông báo trạng thái của các thiết bị. Ở đây các thiết bị
đèn, điều hòa và lò sưởi đang ở trạng thái tắt.
Khi cần xem lịch sử bật tắt của các thiết bị ta bấm vào “Xem chi tiết”.
Trang lịch sử sẽ xuất hiện như sau.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 45
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG
Hình 4.14 Lịch sử 10 lần bật tắt gần nhất của thiết bị.
Ở đây ta thấy trang web liệt kê cho ta 10 lần truy cập gần nhất của thiết bị ta
muốn theo dỏi, trạng thái lúc đó và thời gian thiết bị được truy xuất.
Ví dụ ở dòng 1:
Thiết bị đèn được tắt vào lúc 7h 1p 10s ngày 13 tháng 12 năm 2017.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 46
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
TỔNG KẾT
TỔNG KẾT
Google Cloud Platform là một hệ thống mạnh mẽ nhiều chức năng hữu ích
nhưng lại rác rối, khó sử dụng. Đồ án đã giải thích được phần nào cách sử dụng
Google Cloud Platform đặc biệt là về Google Assistant, Google Speech. Qua đó giúp
phần lớn bạn trẻ có thể tiếp cận với nền tảng này để sử dụng nó vào các mục đích trong
tương lai.
Ngoài ra đề tài còn giới thiệu được cách sử dụng trợ lí ảo Google Assistant.
Cách thiết kế một trang web và đưa trang web đó lên hosting và chạy thật tế.
Hy vọng qua đề tài này có thể giúp mọi người có một cách nhìn đơn giản hơn
về việc phát triển website cũng như ứng dụng trí thông minh nhân tạo vào đời sống
hằng ngày.
Lời cuối cùng em xin cám ơn Tiến Sĩ Chung Tấn Lâm đã nhiệt tình giúp đỡ em
hết lòng để em có thể hoàn thành đề tài này. Kính chúc thầy sức khỏe và thành công.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 47
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
TÀI LIỆU THAM KHẢO
TÀI LIỆU THAM KHẢO
1. http://raspi.vn/
2. https://freetuts.net
3. https://vi.wikipedia.org
4. https://www.pavietnam.vn/vn/
5. https://genk.vn
Cùng nhiều nguồn từ các trang tin công cộng khác.
Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập,
Assignment, Essay
Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net
SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 48

More Related Content

Similar to ĐỒ ÁN MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ THÔNG MINH QUA GIỌNG NÓI

Đồ án tốt nghiệp Khảo sát, đánh giá hàm lượng độc chất methanol có trong rượu...
Đồ án tốt nghiệp Khảo sát, đánh giá hàm lượng độc chất methanol có trong rượu...Đồ án tốt nghiệp Khảo sát, đánh giá hàm lượng độc chất methanol có trong rượu...
Đồ án tốt nghiệp Khảo sát, đánh giá hàm lượng độc chất methanol có trong rượu...
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Nghiên cứu quy trình sản xuất snack từ rong nâu Sargassum po...
Đồ án tốt nghiệp Nghiên cứu quy trình sản xuất snack từ rong nâu Sargassum po...Đồ án tốt nghiệp Nghiên cứu quy trình sản xuất snack từ rong nâu Sargassum po...
Đồ án tốt nghiệp Nghiên cứu quy trình sản xuất snack từ rong nâu Sargassum po...
lamluanvan.net Viết thuê luận văn
 
Báo cáo tốt nghiệp Hoàn thiện quy trình chăm sóc khách hàng tại công ty Bảo h...
Báo cáo tốt nghiệp Hoàn thiện quy trình chăm sóc khách hàng tại công ty Bảo h...Báo cáo tốt nghiệp Hoàn thiện quy trình chăm sóc khách hàng tại công ty Bảo h...
Báo cáo tốt nghiệp Hoàn thiện quy trình chăm sóc khách hàng tại công ty Bảo h...
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Nghiên cứu đề xuất quy trình sản xuất bơ hạt điều
Đồ án tốt nghiệp Nghiên cứu đề xuất quy trình sản xuất bơ hạt điềuĐồ án tốt nghiệp Nghiên cứu đề xuất quy trình sản xuất bơ hạt điều
Đồ án tốt nghiệp Nghiên cứu đề xuất quy trình sản xuất bơ hạt điều
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Ứng dụng một số phương pháp mô tả nhanh trong phát triển sản...
Đồ án tốt nghiệp Ứng dụng một số phương pháp mô tả nhanh trong phát triển sản...Đồ án tốt nghiệp Ứng dụng một số phương pháp mô tả nhanh trong phát triển sản...
Đồ án tốt nghiệp Ứng dụng một số phương pháp mô tả nhanh trong phát triển sản...
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Khảo sát quy trình chế biến bột hạt mít và ứng dụng trong sả...
Đồ án tốt nghiệp Khảo sát quy trình chế biến bột hạt mít và ứng dụng trong sả...Đồ án tốt nghiệp Khảo sát quy trình chế biến bột hạt mít và ứng dụng trong sả...
Đồ án tốt nghiệp Khảo sát quy trình chế biến bột hạt mít và ứng dụng trong sả...
lamluanvan.net Viết thuê luận văn
 
Báo cáo tốt nghiệp Kế toán phải trả cho người lao động tại công ty TNHH MTV L...
Báo cáo tốt nghiệp Kế toán phải trả cho người lao động tại công ty TNHH MTV L...Báo cáo tốt nghiệp Kế toán phải trả cho người lao động tại công ty TNHH MTV L...
Báo cáo tốt nghiệp Kế toán phải trả cho người lao động tại công ty TNHH MTV L...
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Nghiên cứu đánh giá và đề xuất giải pháp tái sử dụng dòng th...
Đồ án tốt nghiệp Nghiên cứu đánh giá và đề xuất giải pháp tái sử dụng dòng th...Đồ án tốt nghiệp Nghiên cứu đánh giá và đề xuất giải pháp tái sử dụng dòng th...
Đồ án tốt nghiệp Nghiên cứu đánh giá và đề xuất giải pháp tái sử dụng dòng th...
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Khảo sát các yếu tố ảnh hưởng đến quá trình ngâm gạo lứt nươ...
Đồ án tốt nghiệp Khảo sát các yếu tố ảnh hưởng đến quá trình ngâm gạo lứt nươ...Đồ án tốt nghiệp Khảo sát các yếu tố ảnh hưởng đến quá trình ngâm gạo lứt nươ...
Đồ án tốt nghiệp Khảo sát các yếu tố ảnh hưởng đến quá trình ngâm gạo lứt nươ...
lamluanvan.net Viết thuê luận văn
 
Đồ án Thực hiện hệ thống điều khiển và giám sát qua Cloud
Đồ án Thực hiện hệ thống điều khiển và giám sát qua CloudĐồ án Thực hiện hệ thống điều khiển và giám sát qua Cloud
Đồ án Thực hiện hệ thống điều khiển và giám sát qua Cloud
lamluanvan.net Viết thuê luận văn
 
ĐỒ ÁN NHẬN DẠNG VÂN TAY TẠI PHÒNG XUẤT NHẬP CẢNH, GỬI DỮ LIỆU QUA INTERNET
ĐỒ ÁN NHẬN DẠNG VÂN TAY TẠI PHÒNG XUẤT NHẬP CẢNH, GỬI DỮ LIỆU QUA INTERNETĐỒ ÁN NHẬN DẠNG VÂN TAY TẠI PHÒNG XUẤT NHẬP CẢNH, GỬI DỮ LIỆU QUA INTERNET
ĐỒ ÁN NHẬN DẠNG VÂN TAY TẠI PHÒNG XUẤT NHẬP CẢNH, GỬI DỮ LIỆU QUA INTERNET
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Áp dụng chỉ số chất lượng nước để đánh giá biến động chất lư...
Đồ án tốt nghiệp Áp dụng chỉ số chất lượng nước để đánh giá biến động chất lư...Đồ án tốt nghiệp Áp dụng chỉ số chất lượng nước để đánh giá biến động chất lư...
Đồ án tốt nghiệp Áp dụng chỉ số chất lượng nước để đánh giá biến động chất lư...
lamluanvan.net Viết thuê luận văn
 
Đồ án Thiết kế bộ điều khiển cho tốc độ động cơ một chiều theo thuật toán log...
Đồ án Thiết kế bộ điều khiển cho tốc độ động cơ một chiều theo thuật toán log...Đồ án Thiết kế bộ điều khiển cho tốc độ động cơ một chiều theo thuật toán log...
Đồ án Thiết kế bộ điều khiển cho tốc độ động cơ một chiều theo thuật toán log...
lamluanvan.net Viết thuê luận văn
 
Khóa luận Nghiên cứu sự hài lòng của khách hàng lòng của Học viên về chất lượ...
Khóa luận Nghiên cứu sự hài lòng của khách hàng lòng của Học viên về chất lượ...Khóa luận Nghiên cứu sự hài lòng của khách hàng lòng của Học viên về chất lượ...
Khóa luận Nghiên cứu sự hài lòng của khách hàng lòng của Học viên về chất lượ...
lamluanvan.net Viết thuê luận văn
 
Khóa luận Nghiên cứu các yếu tố ảnh hưởng đến quyết định sử dụng dịch vụ du l...
Khóa luận Nghiên cứu các yếu tố ảnh hưởng đến quyết định sử dụng dịch vụ du l...Khóa luận Nghiên cứu các yếu tố ảnh hưởng đến quyết định sử dụng dịch vụ du l...
Khóa luận Nghiên cứu các yếu tố ảnh hưởng đến quyết định sử dụng dịch vụ du l...
lamluanvan.net Viết thuê luận văn
 
Luận Văn Công Nghệ Thông Tin Quản Lý Giao Việc Theo Sự Kiện.doc
Luận Văn Công Nghệ Thông Tin Quản Lý Giao Việc Theo Sự Kiện.docLuận Văn Công Nghệ Thông Tin Quản Lý Giao Việc Theo Sự Kiện.doc
Luận Văn Công Nghệ Thông Tin Quản Lý Giao Việc Theo Sự Kiện.doc
sividocz
 
khóa luận 6 Hoàn thiện tổ chức kế toán chi phí sản xuất và tính giá thành sản...
khóa luận 6 Hoàn thiện tổ chức kế toán chi phí sản xuất và tính giá thành sản...khóa luận 6 Hoàn thiện tổ chức kế toán chi phí sản xuất và tính giá thành sản...
khóa luận 6 Hoàn thiện tổ chức kế toán chi phí sản xuất và tính giá thành sản...
lamluanvan.net Viết thuê luận văn
 
Khóa luận Nghiên cứu ảnh hưởng chất lượng dịch vụ đến sự hài lòng khách hàng ...
Khóa luận Nghiên cứu ảnh hưởng chất lượng dịch vụ đến sự hài lòng khách hàng ...Khóa luận Nghiên cứu ảnh hưởng chất lượng dịch vụ đến sự hài lòng khách hàng ...
Khóa luận Nghiên cứu ảnh hưởng chất lượng dịch vụ đến sự hài lòng khách hàng ...
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Nghiên cứu cải tạo môi trường bãi chôn lấp Gò Cát và xây dựn...
Đồ án tốt nghiệp Nghiên cứu cải tạo môi trường bãi chôn lấp Gò Cát và xây dựn...Đồ án tốt nghiệp Nghiên cứu cải tạo môi trường bãi chôn lấp Gò Cát và xây dựn...
Đồ án tốt nghiệp Nghiên cứu cải tạo môi trường bãi chôn lấp Gò Cát và xây dựn...
lamluanvan.net Viết thuê luận văn
 
Đồ án tốt nghiệp Nghiên cứu trích ly và định lượng Charantin từ khổ qua rừng
Đồ án tốt nghiệp Nghiên cứu trích ly và định lượng Charantin từ khổ qua rừngĐồ án tốt nghiệp Nghiên cứu trích ly và định lượng Charantin từ khổ qua rừng
Đồ án tốt nghiệp Nghiên cứu trích ly và định lượng Charantin từ khổ qua rừng
lamluanvan.net Viết thuê luận văn
 

Similar to ĐỒ ÁN MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ THÔNG MINH QUA GIỌNG NÓI (20)

Đồ án tốt nghiệp Khảo sát, đánh giá hàm lượng độc chất methanol có trong rượu...
Đồ án tốt nghiệp Khảo sát, đánh giá hàm lượng độc chất methanol có trong rượu...Đồ án tốt nghiệp Khảo sát, đánh giá hàm lượng độc chất methanol có trong rượu...
Đồ án tốt nghiệp Khảo sát, đánh giá hàm lượng độc chất methanol có trong rượu...
 
Đồ án tốt nghiệp Nghiên cứu quy trình sản xuất snack từ rong nâu Sargassum po...
Đồ án tốt nghiệp Nghiên cứu quy trình sản xuất snack từ rong nâu Sargassum po...Đồ án tốt nghiệp Nghiên cứu quy trình sản xuất snack từ rong nâu Sargassum po...
Đồ án tốt nghiệp Nghiên cứu quy trình sản xuất snack từ rong nâu Sargassum po...
 
Báo cáo tốt nghiệp Hoàn thiện quy trình chăm sóc khách hàng tại công ty Bảo h...
Báo cáo tốt nghiệp Hoàn thiện quy trình chăm sóc khách hàng tại công ty Bảo h...Báo cáo tốt nghiệp Hoàn thiện quy trình chăm sóc khách hàng tại công ty Bảo h...
Báo cáo tốt nghiệp Hoàn thiện quy trình chăm sóc khách hàng tại công ty Bảo h...
 
Đồ án tốt nghiệp Nghiên cứu đề xuất quy trình sản xuất bơ hạt điều
Đồ án tốt nghiệp Nghiên cứu đề xuất quy trình sản xuất bơ hạt điềuĐồ án tốt nghiệp Nghiên cứu đề xuất quy trình sản xuất bơ hạt điều
Đồ án tốt nghiệp Nghiên cứu đề xuất quy trình sản xuất bơ hạt điều
 
Đồ án tốt nghiệp Ứng dụng một số phương pháp mô tả nhanh trong phát triển sản...
Đồ án tốt nghiệp Ứng dụng một số phương pháp mô tả nhanh trong phát triển sản...Đồ án tốt nghiệp Ứng dụng một số phương pháp mô tả nhanh trong phát triển sản...
Đồ án tốt nghiệp Ứng dụng một số phương pháp mô tả nhanh trong phát triển sản...
 
Đồ án tốt nghiệp Khảo sát quy trình chế biến bột hạt mít và ứng dụng trong sả...
Đồ án tốt nghiệp Khảo sát quy trình chế biến bột hạt mít và ứng dụng trong sả...Đồ án tốt nghiệp Khảo sát quy trình chế biến bột hạt mít và ứng dụng trong sả...
Đồ án tốt nghiệp Khảo sát quy trình chế biến bột hạt mít và ứng dụng trong sả...
 
Báo cáo tốt nghiệp Kế toán phải trả cho người lao động tại công ty TNHH MTV L...
Báo cáo tốt nghiệp Kế toán phải trả cho người lao động tại công ty TNHH MTV L...Báo cáo tốt nghiệp Kế toán phải trả cho người lao động tại công ty TNHH MTV L...
Báo cáo tốt nghiệp Kế toán phải trả cho người lao động tại công ty TNHH MTV L...
 
Đồ án tốt nghiệp Nghiên cứu đánh giá và đề xuất giải pháp tái sử dụng dòng th...
Đồ án tốt nghiệp Nghiên cứu đánh giá và đề xuất giải pháp tái sử dụng dòng th...Đồ án tốt nghiệp Nghiên cứu đánh giá và đề xuất giải pháp tái sử dụng dòng th...
Đồ án tốt nghiệp Nghiên cứu đánh giá và đề xuất giải pháp tái sử dụng dòng th...
 
Đồ án tốt nghiệp Khảo sát các yếu tố ảnh hưởng đến quá trình ngâm gạo lứt nươ...
Đồ án tốt nghiệp Khảo sát các yếu tố ảnh hưởng đến quá trình ngâm gạo lứt nươ...Đồ án tốt nghiệp Khảo sát các yếu tố ảnh hưởng đến quá trình ngâm gạo lứt nươ...
Đồ án tốt nghiệp Khảo sát các yếu tố ảnh hưởng đến quá trình ngâm gạo lứt nươ...
 
Đồ án Thực hiện hệ thống điều khiển và giám sát qua Cloud
Đồ án Thực hiện hệ thống điều khiển và giám sát qua CloudĐồ án Thực hiện hệ thống điều khiển và giám sát qua Cloud
Đồ án Thực hiện hệ thống điều khiển và giám sát qua Cloud
 
ĐỒ ÁN NHẬN DẠNG VÂN TAY TẠI PHÒNG XUẤT NHẬP CẢNH, GỬI DỮ LIỆU QUA INTERNET
ĐỒ ÁN NHẬN DẠNG VÂN TAY TẠI PHÒNG XUẤT NHẬP CẢNH, GỬI DỮ LIỆU QUA INTERNETĐỒ ÁN NHẬN DẠNG VÂN TAY TẠI PHÒNG XUẤT NHẬP CẢNH, GỬI DỮ LIỆU QUA INTERNET
ĐỒ ÁN NHẬN DẠNG VÂN TAY TẠI PHÒNG XUẤT NHẬP CẢNH, GỬI DỮ LIỆU QUA INTERNET
 
Đồ án tốt nghiệp Áp dụng chỉ số chất lượng nước để đánh giá biến động chất lư...
Đồ án tốt nghiệp Áp dụng chỉ số chất lượng nước để đánh giá biến động chất lư...Đồ án tốt nghiệp Áp dụng chỉ số chất lượng nước để đánh giá biến động chất lư...
Đồ án tốt nghiệp Áp dụng chỉ số chất lượng nước để đánh giá biến động chất lư...
 
Đồ án Thiết kế bộ điều khiển cho tốc độ động cơ một chiều theo thuật toán log...
Đồ án Thiết kế bộ điều khiển cho tốc độ động cơ một chiều theo thuật toán log...Đồ án Thiết kế bộ điều khiển cho tốc độ động cơ một chiều theo thuật toán log...
Đồ án Thiết kế bộ điều khiển cho tốc độ động cơ một chiều theo thuật toán log...
 
Khóa luận Nghiên cứu sự hài lòng của khách hàng lòng của Học viên về chất lượ...
Khóa luận Nghiên cứu sự hài lòng của khách hàng lòng của Học viên về chất lượ...Khóa luận Nghiên cứu sự hài lòng của khách hàng lòng của Học viên về chất lượ...
Khóa luận Nghiên cứu sự hài lòng của khách hàng lòng của Học viên về chất lượ...
 
Khóa luận Nghiên cứu các yếu tố ảnh hưởng đến quyết định sử dụng dịch vụ du l...
Khóa luận Nghiên cứu các yếu tố ảnh hưởng đến quyết định sử dụng dịch vụ du l...Khóa luận Nghiên cứu các yếu tố ảnh hưởng đến quyết định sử dụng dịch vụ du l...
Khóa luận Nghiên cứu các yếu tố ảnh hưởng đến quyết định sử dụng dịch vụ du l...
 
Luận Văn Công Nghệ Thông Tin Quản Lý Giao Việc Theo Sự Kiện.doc
Luận Văn Công Nghệ Thông Tin Quản Lý Giao Việc Theo Sự Kiện.docLuận Văn Công Nghệ Thông Tin Quản Lý Giao Việc Theo Sự Kiện.doc
Luận Văn Công Nghệ Thông Tin Quản Lý Giao Việc Theo Sự Kiện.doc
 
khóa luận 6 Hoàn thiện tổ chức kế toán chi phí sản xuất và tính giá thành sản...
khóa luận 6 Hoàn thiện tổ chức kế toán chi phí sản xuất và tính giá thành sản...khóa luận 6 Hoàn thiện tổ chức kế toán chi phí sản xuất và tính giá thành sản...
khóa luận 6 Hoàn thiện tổ chức kế toán chi phí sản xuất và tính giá thành sản...
 
Khóa luận Nghiên cứu ảnh hưởng chất lượng dịch vụ đến sự hài lòng khách hàng ...
Khóa luận Nghiên cứu ảnh hưởng chất lượng dịch vụ đến sự hài lòng khách hàng ...Khóa luận Nghiên cứu ảnh hưởng chất lượng dịch vụ đến sự hài lòng khách hàng ...
Khóa luận Nghiên cứu ảnh hưởng chất lượng dịch vụ đến sự hài lòng khách hàng ...
 
Đồ án tốt nghiệp Nghiên cứu cải tạo môi trường bãi chôn lấp Gò Cát và xây dựn...
Đồ án tốt nghiệp Nghiên cứu cải tạo môi trường bãi chôn lấp Gò Cát và xây dựn...Đồ án tốt nghiệp Nghiên cứu cải tạo môi trường bãi chôn lấp Gò Cát và xây dựn...
Đồ án tốt nghiệp Nghiên cứu cải tạo môi trường bãi chôn lấp Gò Cát và xây dựn...
 
Đồ án tốt nghiệp Nghiên cứu trích ly và định lượng Charantin từ khổ qua rừng
Đồ án tốt nghiệp Nghiên cứu trích ly và định lượng Charantin từ khổ qua rừngĐồ án tốt nghiệp Nghiên cứu trích ly và định lượng Charantin từ khổ qua rừng
Đồ án tốt nghiệp Nghiên cứu trích ly và định lượng Charantin từ khổ qua rừng
 

More from lamluanvan.net Viết thuê luận văn

Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất thạch caramel tại Cô...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất thạch caramel tại Cô...Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất thạch caramel tại Cô...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất thạch caramel tại Cô...
lamluanvan.net Viết thuê luận văn
 
Báo cáo thực tập tại CÔNG TY CỔ PHẦN KINH DOANH VÀ DỊCH VỤ HÙNG ANH
Báo cáo thực tập tại CÔNG TY CỔ PHẦN KINH DOANH VÀ DỊCH VỤ HÙNG ANHBáo cáo thực tập tại CÔNG TY CỔ PHẦN KINH DOANH VÀ DỊCH VỤ HÙNG ANH
Báo cáo thực tập tại CÔNG TY CỔ PHẦN KINH DOANH VÀ DỊCH VỤ HÙNG ANH
lamluanvan.net Viết thuê luận văn
 
Báo cáo thực tập tại Công ty Cổ phần Đào tạo, Triển khai dịch vụ Công nghệ th...
Báo cáo thực tập tại Công ty Cổ phần Đào tạo, Triển khai dịch vụ Công nghệ th...Báo cáo thực tập tại Công ty Cổ phần Đào tạo, Triển khai dịch vụ Công nghệ th...
Báo cáo thực tập tại Công ty Cổ phần Đào tạo, Triển khai dịch vụ Công nghệ th...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất sản phẩm Sushi cá Hồ...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất sản phẩm Sushi cá Hồ...Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất sản phẩm Sushi cá Hồ...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất sản phẩm Sushi cá Hồ...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất chả giò xiên que tại...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất chả giò xiên que tại...Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất chả giò xiên que tại...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất chả giò xiên que tại...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất bánh snack jojo vị g...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất bánh snack jojo vị g...Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất bánh snack jojo vị g...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất bánh snack jojo vị g...
lamluanvan.net Viết thuê luận văn
 
BÁO CÁO KẾT THÚC HỌC PHẦN KỸ NĂNG THỰC HÀNH NĂNG LỰC NGHỀ NGHIỆP
BÁO CÁO KẾT THÚC HỌC PHẦN KỸ NĂNG THỰC HÀNH NĂNG LỰC NGHỀ NGHIỆPBÁO CÁO KẾT THÚC HỌC PHẦN KỸ NĂNG THỰC HÀNH NĂNG LỰC NGHỀ NGHIỆP
BÁO CÁO KẾT THÚC HỌC PHẦN KỸ NĂNG THỰC HÀNH NĂNG LỰC NGHỀ NGHIỆP
lamluanvan.net Viết thuê luận văn
 
This assessment plan proposal is to outline a structured approach to evaluati...
This assessment plan proposal is to outline a structured approach to evaluati...This assessment plan proposal is to outline a structured approach to evaluati...
This assessment plan proposal is to outline a structured approach to evaluati...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình công nghệ chế biến tôm Nobash...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình công nghệ chế biến tôm Nobash...Khoá luận tốt nghiệp Đại học Khảo sát quy trình công nghệ chế biến tôm Nobash...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình công nghệ chế biến tôm Nobash...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình bảo quản củ cải trắng tại Côn...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình bảo quản củ cải trắng tại Côn...Khoá luận tốt nghiệp Đại học Khảo sát quy trình bảo quản củ cải trắng tại Côn...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình bảo quản củ cải trắng tại Côn...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Đánh giá thực trạng môi trường nước trên địa bàn...
Khoá luận tốt nghiệp Đại học Đánh giá thực trạng môi trường nước trên địa bàn...Khoá luận tốt nghiệp Đại học Đánh giá thực trạng môi trường nước trên địa bàn...
Khoá luận tốt nghiệp Đại học Đánh giá thực trạng môi trường nước trên địa bàn...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Đánh giá nhận thức của người dân về công tác thu...
Khoá luận tốt nghiệp Đại học Đánh giá nhận thức của người dân về công tác thu...Khoá luận tốt nghiệp Đại học Đánh giá nhận thức của người dân về công tác thu...
Khoá luận tốt nghiệp Đại học Đánh giá nhận thức của người dân về công tác thu...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học đánh giá mối nguy ô nhiễm trong thịt quay, nướng...
Khoá luận tốt nghiệp Đại học đánh giá mối nguy ô nhiễm trong thịt quay, nướng...Khoá luận tốt nghiệp Đại học đánh giá mối nguy ô nhiễm trong thịt quay, nướng...
Khoá luận tốt nghiệp Đại học đánh giá mối nguy ô nhiễm trong thịt quay, nướng...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả sử dụng hầm Biogas trong xử lý...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả sử dụng hầm Biogas trong xử lý...Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả sử dụng hầm Biogas trong xử lý...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả sử dụng hầm Biogas trong xử lý...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của trạm xử lý nước thải Hầm l...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của trạm xử lý nước thải Hầm l...Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của trạm xử lý nước thải Hầm l...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của trạm xử lý nước thải Hầm l...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của hệ thống xử lý nước thải n...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của hệ thống xử lý nước thải n...Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của hệ thống xử lý nước thải n...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của hệ thống xử lý nước thải n...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học 1 Đánh giá hiệu quả các biện pháp xử lý chất thả...
Khoá luận tốt nghiệp Đại học 1 Đánh giá hiệu quả các biện pháp xử lý chất thả...Khoá luận tốt nghiệp Đại học 1 Đánh giá hiệu quả các biện pháp xử lý chất thả...
Khoá luận tốt nghiệp Đại học 1 Đánh giá hiệu quả các biện pháp xử lý chất thả...
lamluanvan.net Viết thuê luận văn
 
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả bể biogas plastic nổi trong xử...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả bể biogas plastic nổi trong xử...Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả bể biogas plastic nổi trong xử...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả bể biogas plastic nổi trong xử...
lamluanvan.net Viết thuê luận văn
 

More from lamluanvan.net Viết thuê luận văn (20)

Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất thạch caramel tại Cô...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất thạch caramel tại Cô...Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất thạch caramel tại Cô...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất thạch caramel tại Cô...
 
Báo cáo thực tập tại CÔNG TY CỔ PHẦN KINH DOANH VÀ DỊCH VỤ HÙNG ANH
Báo cáo thực tập tại CÔNG TY CỔ PHẦN KINH DOANH VÀ DỊCH VỤ HÙNG ANHBáo cáo thực tập tại CÔNG TY CỔ PHẦN KINH DOANH VÀ DỊCH VỤ HÙNG ANH
Báo cáo thực tập tại CÔNG TY CỔ PHẦN KINH DOANH VÀ DỊCH VỤ HÙNG ANH
 
Báo cáo thực tập tại Công ty Cổ phần Đào tạo, Triển khai dịch vụ Công nghệ th...
Báo cáo thực tập tại Công ty Cổ phần Đào tạo, Triển khai dịch vụ Công nghệ th...Báo cáo thực tập tại Công ty Cổ phần Đào tạo, Triển khai dịch vụ Công nghệ th...
Báo cáo thực tập tại Công ty Cổ phần Đào tạo, Triển khai dịch vụ Công nghệ th...
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất sản phẩm Sushi cá Hồ...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất sản phẩm Sushi cá Hồ...Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất sản phẩm Sushi cá Hồ...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất sản phẩm Sushi cá Hồ...
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất chả giò xiên que tại...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất chả giò xiên que tại...Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất chả giò xiên que tại...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất chả giò xiên que tại...
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất bánh snack jojo vị g...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất bánh snack jojo vị g...Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất bánh snack jojo vị g...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình sản xuất bánh snack jojo vị g...
 
BÁO CÁO KẾT THÚC HỌC PHẦN KỸ NĂNG THỰC HÀNH NĂNG LỰC NGHỀ NGHIỆP
BÁO CÁO KẾT THÚC HỌC PHẦN KỸ NĂNG THỰC HÀNH NĂNG LỰC NGHỀ NGHIỆPBÁO CÁO KẾT THÚC HỌC PHẦN KỸ NĂNG THỰC HÀNH NĂNG LỰC NGHỀ NGHIỆP
BÁO CÁO KẾT THÚC HỌC PHẦN KỸ NĂNG THỰC HÀNH NĂNG LỰC NGHỀ NGHIỆP
 
This assessment plan proposal is to outline a structured approach to evaluati...
This assessment plan proposal is to outline a structured approach to evaluati...This assessment plan proposal is to outline a structured approach to evaluati...
This assessment plan proposal is to outline a structured approach to evaluati...
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình công nghệ chế biến tôm Nobash...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình công nghệ chế biến tôm Nobash...Khoá luận tốt nghiệp Đại học Khảo sát quy trình công nghệ chế biến tôm Nobash...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình công nghệ chế biến tôm Nobash...
 
Khoá luận tốt nghiệp Đại học Khảo sát quy trình bảo quản củ cải trắng tại Côn...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình bảo quản củ cải trắng tại Côn...Khoá luận tốt nghiệp Đại học Khảo sát quy trình bảo quản củ cải trắng tại Côn...
Khoá luận tốt nghiệp Đại học Khảo sát quy trình bảo quản củ cải trắng tại Côn...
 
Khoá luận tốt nghiệp Đại học Đánh giá thực trạng môi trường nước trên địa bàn...
Khoá luận tốt nghiệp Đại học Đánh giá thực trạng môi trường nước trên địa bàn...Khoá luận tốt nghiệp Đại học Đánh giá thực trạng môi trường nước trên địa bàn...
Khoá luận tốt nghiệp Đại học Đánh giá thực trạng môi trường nước trên địa bàn...
 
Khoá luận tốt nghiệp Đại học Đánh giá nhận thức của người dân về công tác thu...
Khoá luận tốt nghiệp Đại học Đánh giá nhận thức của người dân về công tác thu...Khoá luận tốt nghiệp Đại học Đánh giá nhận thức của người dân về công tác thu...
Khoá luận tốt nghiệp Đại học Đánh giá nhận thức của người dân về công tác thu...
 
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
 
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
Khoá luận tốt nghiệp đại học Đánh giá mức độ ô nhiễm đất do tồn dư hóa chất b...
 
Khoá luận tốt nghiệp Đại học đánh giá mối nguy ô nhiễm trong thịt quay, nướng...
Khoá luận tốt nghiệp Đại học đánh giá mối nguy ô nhiễm trong thịt quay, nướng...Khoá luận tốt nghiệp Đại học đánh giá mối nguy ô nhiễm trong thịt quay, nướng...
Khoá luận tốt nghiệp Đại học đánh giá mối nguy ô nhiễm trong thịt quay, nướng...
 
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả sử dụng hầm Biogas trong xử lý...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả sử dụng hầm Biogas trong xử lý...Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả sử dụng hầm Biogas trong xử lý...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả sử dụng hầm Biogas trong xử lý...
 
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của trạm xử lý nước thải Hầm l...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của trạm xử lý nước thải Hầm l...Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của trạm xử lý nước thải Hầm l...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của trạm xử lý nước thải Hầm l...
 
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của hệ thống xử lý nước thải n...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của hệ thống xử lý nước thải n...Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của hệ thống xử lý nước thải n...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả của hệ thống xử lý nước thải n...
 
Khoá luận tốt nghiệp Đại học 1 Đánh giá hiệu quả các biện pháp xử lý chất thả...
Khoá luận tốt nghiệp Đại học 1 Đánh giá hiệu quả các biện pháp xử lý chất thả...Khoá luận tốt nghiệp Đại học 1 Đánh giá hiệu quả các biện pháp xử lý chất thả...
Khoá luận tốt nghiệp Đại học 1 Đánh giá hiệu quả các biện pháp xử lý chất thả...
 
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả bể biogas plastic nổi trong xử...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả bể biogas plastic nổi trong xử...Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả bể biogas plastic nổi trong xử...
Khoá luận tốt nghiệp Đại học Đánh giá hiệu quả bể biogas plastic nổi trong xử...
 

ĐỒ ÁN MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ THÔNG MINH QUA GIỌNG NÓI

  • 1. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ MINH KHOA KỸ THUẬT ĐIỆN TỬ 2 _____________ ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC CHUYÊN NGÀNH: KỸ THUẬT ĐIỆN TỬ - MÁY TÍNH HỆ CHÍNH QUY NIÊN KHÓA: 2013-2018 Đề tài: MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ THÔNG MINH QUA GIỌNG NÓI Mã số đề tài: 18- N13DCDT101 Sinh viên thực hiện: NGUYỄN TRUNG THÔNG MSSV: N13DCDT101 Lớp: D13CQKD02-N Giáo viên hướng dẫn: TS. CHUNG TẤN LÂM 12/2017 TP.HCM – 2017
  • 2. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net LỜI CẢM ƠN Đầu tiên, em xin chân thành gửi lời cảm ơn đến toàn thể quý thầy cô Học Viện Công nghệ Bưu chính Viễn Thông cơ sở TP.HCM nói chung và quý thầy cô khoa Điện -Điện Tử II nói riêng, cảm ơn tất cả các thầy cô đã tận tình giảng dạy, truyền đạt những kiến thức quý báu trong suốt bốn năm em học tập và rèn luyện tại trường. Đặc biệt, em xin được gửi lời cảm ơn sâu sắc nhất tới Giảng viên hướng dẫn:Thầy T.S Chung Tấn Lâm đã hết lòng hỗ trợ, giúp đỡ em từ giai đoạn chọn đề tài, có những góp ý hết sức đáng giá trong quá trình làm cũng như các kinh nghiệm mà thầy đã truyền đạt cho em. Nhân đây, em cũng xin gửi lời cảm ơn tới gia đình và bạn bè, họ đã cho em những lời động viên, khích lệ và cả những lời phê bình nghiêm túc trong học tập và trong cuộc sống. Em xin kính chúc quý thầy cô trong trường, trong khoa thành công trong công việc cũng như trong cuộc sống. Một lần nữa, em xin trân trọng cảm ơn. Thành phố Hồ Chí Minh, ngày 4 tháng 12 năm 2017 i
  • 3. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net MỤC LỤC CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3................................................. 1 1.1 GIỚI THIÊU CHUNG .......................................................................................................... 1 1.1.1 Raspberry Pi là gì?.......................................................................................................... 1 1.1.2 Raspberry Pi dùng để làm gì?...................................................................................... 2 1.1.3 Tại sao lại chọn Raspberry Pi...................................................................................... 2 1.2 PHẦN CỨNG.......................................................................................................................... 3 1.3 HỆ ĐIỀU HÀNH VÀ PHẦN MỀM ................................................................................. 5 1.3.1 Raspbian ............................................................................................................................ 5 1.3.2 Thư viện WiringPi.......................................................................................................... 5 1.3.3 Module RPi.GPIO........................................................................................................... 6 CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT...........................................................10 2.1 GOOGLE CLOUD PLATFORM ....................................................................................10 2.2 GOOGLE CLOUD SPEECH API...................................................................................20 2.3 GOOGLE ASSISTANT LÀ GÌ?......................................................................................21 CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER......25 3.1 Khởi tạo website....................................................................................................................25 3.1.1 Ngôn ngữ PHP...............................................................................................................25 3.1.2 Phương thức GET and POST....................................................................................28 3.1.3 Cơ sở dữ liệu ..................................................................................................................30 3.1.4 Giao diện Website (Front end)..................................................................................34 3.2 Triển khai webserver lên server thật. ..............................................................................35 3.2.1 Hosting.............................................................................................................................35 3.2.2 Tên Miền ( Domain).....................................................................................................36 3.2.3 Cpanel và File Manager..............................................................................................36 CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG.....................................................39 4.1 Phần Cứng...............................................................................................................................39 4.1.1 Các linh kiện cần có:....................................................................................................39 4.1.2 Sơ đồ kết nối...................................................................................................................41 4.1.3 Nguyên mẫu thành phẩm............................................................................................43 4.2 Phần mềm................................................................................................................................44 4.2.1 Chương trình nhận diện giọng nói trên raspberry pi...........................................44 4.2.2 Hệ thống website và cách sử dụng...........................................................................45 TỔNG KẾT ......................................................................................................................................47 TÀI LIỆU THAM KHẢO ..........................................................................................................48 ii
  • 4. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net DANH MỤC HÌNH Hình 1.1 Bo mạch raspberry pi 3............................................................................................................ 1 Hình 1.2 các dòng Raspberry Pi thông dụng hiện nay .................................................................. 2 Hình 1.3 Sơ đồ cấu tạo Raspberry Pi .................................................................................................... 3 Hình 1.4 Sơ đồ chân của Raspberry Pi 3............................................................................................. 5 Hình 2.1 Logo Google Cloud Platform............................................................................................. 10 Hình 2.2 Ảnh hiển thị khi đăng nhập vào console của google cloud................................... 11 Hình 2.3 Chọn Select a project để tiếp tục ...................................................................................... 12 Hình 2.4 Chọn Create Project................................................................................................................ 12 Hình 2.5 Đặt tên cho project và nhấn Create.................................................................................. 13 Hình 2.6 APIs & services submenu.................................................................................................... 13 Hình 2.7 APIs and Serices dashboard................................................................................................ 14 Hình 2.8 Tìm kiếm APIs.......................................................................................................................... 14 Hình 2.9 Kích hoạt API............................................................................................................................ 15 Hình 2.10 Khởi tạo giấy chứng nhận ................................................................................................. 15 Hình 2.11 Thiết lập tới API cần giấy chứng nhận........................................................................ 16 Hình 2.12 Phân quyền cho giấy chứng nhận .................................................................................. 16 Hình 2.13 Service key đã được khởi tạo........................................................................................... 17 Hình 2.14 Chứng thực Oauth................................................................................................................. 17 Hình 2.15 Lưu chứng thực...................................................................................................................... 18 Hình 2.16 Tạo giấy phép từ chứng thực Oauth ............................................................................. 18 Hình 2.17 Đặt tên cho ID người dùng ............................................................................................... 19 Hình 2.18 Tải file chứng thực về máy tính. .................................................................................... 19 Hình 2.19 Logo Google Assistant ....................................................................................................... 21 Hình 3.1 Logo ngôn ngữ PHP............................................................................................................... 25 Hình 3.2 Truy vấn SELECT trong MySQL.................................................................................... 33 Hình 3.3 Truy vấn UPDATE trong MySQL................................................................................... 34 Hình 3.4 File Manager trong cPanel................................................................................................... 37 Hình 3.5 Option Upload trong File Manager.................................................................................. 37 Hình 3.6 Giao diện Upload file trong cPanel ................................................................................. 38 Hình 4.1 Máy tính nhúng Rasberry Pi 3........................................................................................... 39 Hình 4.2 Loa ................................................................................................................................................. 39 Hình 4.3 Microphone mini ..................................................................................................................... 40 Hình 4.4 USB SOUND CARD............................................................................................................. 40 Hình 4.5 Relay ............................................................................................................................................. 41 Hình 4.6 Sơ đồ kết nối của Raspberry pi với Relay .................................................................... 41 Hình 4.7 Kết nối giữa Raspberry Pi với loa và microphone.................................................... 42 Hình 4.8 Các thành phần sau khi được lắp ghép vào nhau. ..................................................... 43 Hình 4.9 Mô hình khi đã hoàn thiện................................................................................................... 43 Hình 4.10 Khởi động chương trình thành công............................................................................. 44 Hình 4.11 Quá nhận dạng giọng nói bắt đầu .................................................................................. 44 Hình 4.12 Toàn bộ 1 phiên hoạt động của google assistant..................................................... 44 Hình 4.13 Giao diện chính của trang web........................................................................................ 45 Hình 4.14 Lịch sử 10 lần bật tắt gần nhất của thiết bị................................................................ 46 iii
  • 5. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 1.1 GIỚI THIÊU CHUNG 1.1.1 Raspberry Pi là gì? Raspberry Pi là từ để chỉ các máy tính chỉ có một board mạch (hay còn gọi là máy tính nhúng) kích thước chỉ bẳng một thẻ tín dụng, được phát triển tại Anh bởi Raspberry Pi Foundation với mục đích ban đầu là thúc đẩy việc giảng dạy về khoa học máy tính cơ bản trong các trường học và các nước đang phát triển. Hình 1.1 Bo mạch raspberry pi 3
  • 6. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 1
  • 7. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 1.1.2 Raspberry Pi dùng để làm gì? Bạn có thể search Google với cụm từ "Raspberry Pi projects" để thấy người ta dùng Pi làm các thứ như: • Đầu coi phim HD giống như Android Box, hỗ trợ KODI đầy đủ. • Máy chơi game cầm tay, console, game thùng. Chơi như máy điện tử băng ngày xưa, giả lập được nhiều hệ máy. • Cắm máy tải Torrent 24/24. • Dùng làm VPN cá nhân. • Biến ổ cứng bình thường thành ổ cứng mạng (NAS). • Làm camera an ninh, quan sát từ xa. • Hiển thị thời tiết, hiển thị thông tin mạng nội bộ... • Máy nghe nhạc, máy đọc sách. • Làm thành một cái máy Terminal di động có màn hình, bàn phím, pin dự phòng để sử dụng mọi lúc mọi nơi, dò pass Wi-Fi... • Làm thiết bị điều khiển Smart Home, điều khiển mọi thiết bị điện tử trong nhà. • Điều khiển robot, máy in không dây từ xa, Airplay... • ... Hình 1.2 các dòng Raspberry Pi thông dụng hiện nay 1.1.3 Tại sao lại chọn Raspberry Pi • Giá rẻ: chỉ từ 5 USD thôi là bạn đã mua được một cái Pi (phiên bản rút gọn Raspberry Pi Zero). Bản Pi 3 là mạnh nhất hiện tại, có đầy đủ Wi-Fi, Bluetooth, cấu hình cao nhất.
  • 8. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 2
  • 9. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 • Đơn giản, dễ dùng, tiết kiệm không gian: dùng làm các công việc văn phòng đơn giản, gõ Word, Excel hay tạo PowerPoint, lướt web. • Tự học lập trình bằng các app đơn giản của Pi, trẻ em cũng học được. • Tiêu thụ rất ít điện: Ví dụ như tải Torrent, thay vì cắm máy tính công suất hàng trăm Watts liên tục 24/24 thì chỉ cần dùng một cái Pi công suất chưa tới 5W cũng làm được. • Có tính di động cao: có thể bỏ vào túi mang đi khắp nơi, thích hợp để làm máy nghe nhạc di động, máy đọc ebook, máy dò pass Wi-Fi, máy chơi game cầm tay. 1.2 PHẦN CỨNG Hình 1.3 Sơ đồ cấu tạo Raspberry Pi Raspberry Pi có hai phiên bản, Model A có giá 25$ và Model B có giá 35$ . Model B như hình trên thông dụng hơn cả. Model B bao gồm những phần cứng và những cổng giao diện: • SoC 700MHz với 512MB RAM • 1 cổng HDMI cho đầu ra âm thanh / video số • 1 cổng video RCA cho đầu ra video Analog
  • 10. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 3
  • 11. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 • Jack Headphone Stereo 3.5mm cho đầu ra âm thanh Analog • 02 cổng USB • 01 đầu đọc thẻ nhớ SD để tải hệ điều hành • 01 cổng Ethernet LAN. • 01 giao diện GPIO (General Purpose Input/Output) Model A cũng gần tương tự như Model B nhưng có sự thay đổi như sau • 1 cổng USB • Không có cổng Ethernet vì thế người dùng phải thêm Adapter USB Wi-Fi hoặc Ethernet nếu cần kết nối mạng • • • • • • • • • • • • • • • • • • 256MB RAM Broadcom BCM2837 chipset running at 1.2 GHz 64-bit quad-core ARM Cortex-A53 802.11 b/g/n Wireless LAN Bluetooth 4.1 (Classic & Low Energy) Dual core Videocore IV® Multimedia co-processor 1 GB LPDDR2 memory Supports all the latest ARM GNU/Linux distributions and Windows 10 IoT MicroUSB connector for 2.5 A power supply 1 x 10/100 Ethernet port 1 x HDMI video/audio connector 1 x RCA video/audio connector 4 x USB 2.0 ports 40 GPIO pins Chip antenna DSI display connector MicroSD card slot Dimensions: 85 x 56 x 17 mm
  • 12. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 4
  • 13. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 Hình 1.4 Sơ đồ chân của Raspberry Pi 3 1.3 HỆ ĐIỀU HÀNH VÀ PHẦN MỀM 1.3.1 Raspbian Đây là bản build Linux dựa trên nên Debian (Gần giống ubuntu) với giao diện LXDE (thay vì GNOME). Có đầy đủ web browser, media player, tools, etc … Nói chung HĐH này dành cho những người muốn dùng Raspberry Pi như một cái PC. Raspbian có dung lượng sau khi giải nén là khoảng gần 4GB, bạn cần tối thiểu 1 cái thẻ 4GB để có thể sử dụng Raspbian. Tuy nhiên, chúng tôi nghĩ bạn nên sử dụng thẻ tối thiểu 8GB vì bạn cần cài thêm các ứng dụng khác nữa. Raspbian được hướng đến người dùng có mục đích: • Sử dụng Raspberry Pi như máy tính văn phòng để lướt web, soạn văn bản, check mail và thi thoảng nghe nhạc/xem phim. • Nghiên cứu phát triển các thiết bị điều khiển tự động. • Sử dụng như một máy chủ cung cấp các dịch vụ như web, file server, printer server 1.3.2 Thư viện WiringPi Một trong những ứng dụng chủ yếu của Raspberry Pi là sử dụng trong các thiết bị điều khiển tự động. Để tiến hành điều khiển, đọc, nhận dữ liệu từ các thiết bị bên ngoài chúng ta cần thao tác với các chân cắm mở rộng trên kit Raspberry Pi.
  • 14. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 5
  • 15. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 Để sử dung, điều khiển các chân cắm mở rộng GPIO trên kit Raspberry Pi một cách đơn giản và dễ hiểu người ta thường sử dụng bộ thư viện WiringPI. WiringPi là một thư viện truy cập GPIO viết bằng C cho BCM2835 sử dụng trong Raspberry Pi. Nó được phát hành theo giấy phép GNU LGPLv3 và là có thể sử dụng từ C và C ++ và nhiều ngôn ngữ khác. Với bộ thư viện này, chúng ta có thể lập trình vào ra cơ bản cho từng chân của Raspberry Pi, hoặc có thể cấu hình, tổ hợp các chân để làm các tính năng chuyên biệt như : điều chế độ rộng xung PWM, giao tiếp UART, SPI, I2C… Và nhiều tính năng khác nữa. Để sử dụng được bộ thư viện WirringPi cho lập trình GPIO việc đầu tiên là phải tiến hành cài đặt bộ thư viện này vào kít Raspberry Pi chạy hệ điều hành Raspbian.Các bước cài đặt này như sau: Bước 1: Cài đặt chương trình download dữ liệu GIT. Mở terminal gõ lệnh: $ sudo apt-get install git-core Bước 2: Download bộ thư viện và các ví dụ về WiringPi về kit bằng cách gõ lệnh: $ git clone git://git.dragon.net/wiringPi ~ Sau khi download, thư viện wiringPi sẽ nằm trong thư mục home của Raspbian. Bước 3: Chuyển đến thư mực Wiringpi để tiến hành build thư viện này. $ cd ~/WiringPi $ ./build Sau khi tiến hành các bước trên thì WiringPi đã được cài đặt trên máy. Để tiến hành kiểm tra quá trình cài đặt ta dùng lệnh: $ gpio -v $ gpio readall 1.3.3 Module RPi.GPIO Để điều khiển GPIO của Raspberry Pi bằng Python, một trong những phương pháp phổ biến nhất là sử dụng module RPi.GPIO. 1.3.3.1 Cài đặt Thường thì RPi.GPIO đã mặc định có sẵn khi bạn cài đặt Raspbian. Trong trường hợp chưa có bạn có thể tự cài đặt thư viện này: $ sudo apt - get update 1.3.3.2 Sử dụng module Trong chương trình Python, bạn bắt đầu bằng: Với lệnh trên, bạn có thể sử dụng thư viện với cái tên GPIO trong suốt phần sau của chương trình, bạn cũng có thể dùng bất cứ tên gì khác mà bạn muốn.
  • 16. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 6
  • 17. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 Để thông báo lỗi (nếu có) trong quá trình import: try: import RPi.GPIO as GPIO except RuntimeError: print("Lỗi! Không import được RPi.GPIO, có thể bạn cần dùng 'sudo' để thực thi script") 1.3.3.3 Đánh số chân Có 2 cách để đánh số chân (pin) cho Raspberry Pi với RPi.GPIO (bạn hãy xem sơ đồ chân trong hình 1.4 Sơ đồ chân của Raspberry Pi). Một là sử dụng kiểu BOARD. Đây là kiểu đánh số theo thự tự chân trên board, như trong hình là các Pin# từ 1 đến 40 theo thứ tự. Lợi ích của việc sử dụng kiểu này là chương trình của bạn vẫn sẽ chạy đúng dù bạn có đổi từ version Pi này sang version Pi khác vì thứ tự chân vẫn vậy. Hai là sử dụng kiểu BCM. Đây là kiểu đánh số chân dựa trên chân của chíp xử lý Broadcom SOC. Chương chình của bạn có thể bị chạy sai nếu sử dụng kiểu này vì hai version Pi khác nhau có thể sử dụng SOC khác nhau. Hiện thực trong chương trình: GPIO.setmode(GPIO.BOARD) # hoặc GPIO.setmode(GPIO.BCM) Để xác định kiểu đánh số chân nào đang được sử dụng (chẳng hạn từ một chương trình Python khác) mode = GPIO.getmode() Kết quả trả về sẽ là GPIO.BOARD, GPIO.BCM hoặc None 1.3.3.4 Warning Đôi khi một hoặc nhiều chương trình đang cố điều khiển cùng một chân của GPIO, lúc này RPi.GPIO sẽ đưa ra một warning về điều đó. Để ẩn warning này, bạn chỉ cần: GPIO.setwarnings(False) Thiết lập kênh Bạn cần phải thiết lập chân GPIO là input(ngõ vào) hay output (ngõ ra). Thiết lập ngõ vào: GPIO.setup(pin, GPIO.IN)
  • 18. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 7
  • 19. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 1 : MÁY TÍNH NHÚNG RASPBERRY PI 3 với pin là chân mà bạn muốn thiết lập (dựa vào kiểu đánh số BOARD hay BCM đã đề cập ở trên). Thiết lập ngõ ra: GPIO.setup(pin, GPIO.OUT) Bạn cũng có thể khởi tạo giá trị ban đầu cho ngõ ra (chẳng hạn bạn muốn ngõ ra là mức cao ngay khi chương trình bắt đầu chạy): GPIO.setup(pin, GPIO.OUT, initial=GPIO.HIGH) Thiết lập nhiều chân cùng lúc Python cho phép bạn tạo danh sách (list). Và để thiết lập nhiều chân GPIO cùng một chức năng, bạn chỉ cần tạo một list các chân GPIO đó và truyền vào hàm setup: pin_list = [11,12] # bao nhiêu chân tùy ý bạn GPIO.setup(pin_list, GPIO.OUT) Ngoài ra, thay vì dùng list bạn cũng có thể dùng tuple : pin_tup = (11,12) Input Để đọc giá trị vào từ chân GPIO, ta dùng: GPIO.input(pin) Hàm trên sẽ trả về mức thấp 0 / GPIO.LOW / False hoặc mức cao 1 / GPIO.HIGH / True. Output Để cho ra mức điện áp thấp hoặc cao trên một chân GPIO, ta dùng: GPIO.output(pin, state) Trong đó state (trạng thái) có thể là 0 / GPIO.LOW / False hoặc mức cao 1 / GPIO.HIGH / True. Output cho nhiều chân cùng lúc Cũng tương tự với việc bạn thiết lập ngõ ra cho nhiều chân: pin_list = [11,12] GPIO.output(pin_list, GPIO.LOW) # Tất cả các chân mức thấp GPIO.output(pin_list, (GPIO.HIGH, GPIO.LOW)) # Chân 11 mức cao, chân 12 mức thấp 1.3.3.5 Cleanup Ở cuối chương trình, bạn nên đưa trạng thái các GPIO về mặc định (điều này giúp bạn tránh được tình trạng ngắn mạch gây ra hư hại GPIO). Để làm được điều đó, ta sử dụng: GPIO.cleanup()
  • 20. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 8
  • 21. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net Lưu ý rằng hàm cleanup chỉ xóa trạng thái của những chân đã được bạn sử dụng trong chương trình và một điều quan trọng là cleanup cũng đồng thời sẽ xóa thiết lập đánh số chân (BCM hay BOARD) trong chương trình của bạn. Vậy nên hãy chắc rằng cleanup được dùng khi chương trình kết thúc. Bạn cũng hoàn toàn có thể xóa những chân cụ thể thay vì toàn bộ các chân đã được sử dụng: GPIO.cleanup(pin) # xóa một chân cụ thể GPIO.cleanup( (pin11, pin12) ) # xóa 2 chân sử dụng list GPIO.cleanup( [pin11, pin12] ) # xóa 2 chân sử dụng tuple Thông tin về board và RPi.GPIO Sử dụng lệnh print để in ra những thông tin cần biết về board và RPi, chẳng hạn: print(GPIO.RPI_INFO) 1.3.3.6 Các thông số cần biết: Thông tin về RPi GPIO.RPI_INFO Thông tin về board Raspberry Pi GPIO.RPI_INFO['P1_REVISION'] và GPIO.RPI_REVISION(deprecated) Version của RPi.GPIO đang sử dụng: GPIO.VERSION SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 9
  • 22. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT 2.1 GOOGLE CLOUD PLATFORM Hình 2.1 Logo Google Cloud Platform Google Cloud Platform là dịch vụ máy chủ của Google cung cấp dưới dạng điện toán đám mây (nghe lùng bùng rồi). Bạn cứ hiểu đơn giản là mọi máy tính, phần mềm có sẵn cả, chỉ cần lên bấm nút là xài. Công ty bạn chẳng cần phải thuê chổ đặt máy chủ, chả phải trả tiền điện, tiền bảo trì hàng tháng, bảo mật … Google lo từ A đến Z sau đám mây đen đó, nói chung là là họ lo hết. Google Cloud Platform không chỉ cung cấp dịch vụ máy chủ không mà còn cung cấp API (cách thức gọi xử lý thông tin) mà Google là cả kho thông tin như tìm kiếm, youtube, bản đồ, drive, email… Để sử dụng google cloud platform ta cần thực hiện các bước sau. Lưu ý: Các thao tác được thực hiện trên hệ điều hành Linux Bước 1: Tải và cài đặt Google Cloud Platform tại địa chỉ: https://cloud.google.com/sdk/ Bước 2: Tiến hành cài đặt Google Cloud Platform bằng dòng lệnh ./google-cloud-sdk/install.sh Bước 3: Sau khi đã cài đặt thành công Google Cloud Platform ta khỏi tạo SDK bằng cách: ./google-cloud-sdk/bin/gcloud init
  • 23. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 10
  • 24. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Để xác máy tính đang xử dụng với google cloud platform ta truy cập vào địa chỉ sau: https://console.cloud.google.com/ và đăng nhập tài khoản google. Hình 2.2 Ảnh hiển thị khi đăng nhập vào console của google cloud Sau khi đăng nhập cửa sổ Platform hiện lên các bạn chọn giống như hình và ấn tiếp tục.
  • 25. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 11
  • 26. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Hình 2.3 Chọn Select a project để tiếp tục Click chuột vào Selecrt a project. Hình 2.4 Chọn Create Project
  • 27. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 12
  • 28. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Ấn vào dấu + ở đây để tạo Project mới. Hình 2.5 Đặt tên cho project và nhấn Create Đặt tên cho Project này và ấn Create. Bước 7: Hình 2.6 APIs & services submenu
  • 29. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 13
  • 30. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Click chuột vào API & services Hình 2.7 APIs and Serices dashboard Sau đó chọn Enable APIS AND Services Hình 2.8 Tìm kiếm APIs
  • 31. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 14
  • 32. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Gõ vào thẻ tìm kiếm cụm từ Google assistant để tìm kiếm APIs, APIs tìm được sẽ xuất hiện bên dưới các bạn click vào nó. Hình 2.9 Kích hoạt API Và chọn Enable ở đây. Hình 2.10 Khởi tạo giấy chứng nhận
  • 33. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 15
  • 34. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Tiếp đến chọn Create Credentials Hình 2.11 Thiết lập tới API cần giấy chứng nhận Đặt các tùy chọn như hình trên, và click vào What Credentials do I need? Hình 2.12 Phân quyền cho giấy chứng nhận
  • 35. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 16
  • 36. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Tiếp tục thiết lập như hình và Click vào Continue Hình 2.13 Service key đã được khởi tạo File Service key được tạo và tải về. Hình 2.14 Chứng thực Oauth
  • 37. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 17
  • 38. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Các bạn chuyển sang thẻ Oauth consent Screen Hình 2.15 Lưu chứng thực Điền địa chỉ email đã đăng nhập ban đầu và điền Product name sau đó chọn Save Hình 2.16 Tạo giấy phép từ chứng thực Oauth
  • 39. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 18
  • 40. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Sau đó click vào Create credentials và chọn dòng Oauth client ID Hình 2.17 Đặt tên cho ID người dùng. Mục Application type các bạn Other, mục name các bạn điền tên của client sau đó ấn Create. Hình 2.18 Tải file chứng thực về máy tính.
  • 41. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 19
  • 42. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT 2.2 GOOGLE CLOUD SPEECH API Google Speech API là dịch vụ cho phép chuyển từ giọng nói thành text, hiện tại đã hỗ trợ khá nhiều ngôn ngữ, trong đó có tiếng Việt. Google Speech API là API cho phép lập trình viên sử dụng dịch vụ của Google cho các ứng dụng của mình, có mặt trên khá nhiều nền tảng, trong đó khá phổ biến là Android. Để sử dụng Google Speech API ta cần tạo file json có nội dung như sau: { "config": { "encoding":"FLAC", "sampleRateHertz": 16000, "languageCode": "en-US", "enableWordTimeOffsets": false }, "audio": { "uri":"gs://cloud-samples-tests/speech/brooklyn.flac" } } Lưu file này với tên sync-request.json Trong đó ở phần tử config ta thiết lập các thông số của file nguồn về kiểu mã hóa, tần số lấy mẫu và khu vực ngôn ngữ. Tiếp theo ở phần tử audio, ta thiết lập đường dẫn đến file nguồn. Sau đó ta cần xác thực tài khoảng dịch vụ của mình với Google Cloud Platform bằng cách dùng lệnh: gcloud auth activate-service-account --key-file=service-account-key-file Về cách lấy service-account-key-file có thể xem lại tại mục 2.2 Sau khi đã xác thực được tài khoảng với Google Cloud Platform ta cần lấy access tokien bằng cách gõ lệnh: gcloud auth application-default print-access-token Một access token sẽ được in ra màng hình. Ta cần lưu lại token đó để dễ dàng sử dụng sau này. Cuối cùng ta dùng lệnh curl để gửi dữ liệu cần chuyển đổi lên Google Cloud để nó tiến hành quá trình chuyển đổi: curl -s -H "Content-Type: application/json" -H "Authorization: Bearer access_token"
  • 43. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 20
  • 44. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT https://speech.googleapis.com/v1/speech:recognize -d @sync-request.json Sau khi chuyển đổi hoàn tất. Google Cloud Platform sẽ trả về cho ta 1 file json chứa giá trị kết quả. { "results": [ { "alternatives": [ { "transcript": "how old is the Brooklyn Bridge", "confidence": 0.98267895 } ] } ] } Như ở file kết quả. Chúng ta thấy được từ file audio ban đầu đã trả về lại kết quả là đoạn transcript “How old is the brooklyn Bridge” với độ tin tưởng là 98,27% 2.3 GOOGLE ASSISTANT LÀ GÌ? Google Assistant là một trợ lý cá nhân ảo được phát triển bởi Google và được giới thiệu tại hội nghị nhà phát triển của hãng vào tháng 5 năm 2016. Không giống như Google Now, Google Assistant có thể tham gia các cuộc trò chuyện hai chiều. Hình 2.19 Logo Google Assistant
  • 45. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 21
  • 46. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT Assistant ban đầu được đưa vào ứng dụng nhắn tin Google Allo, và loa thông minh Google Home. Sau một thời gian chỉ có mặt trên hai chiếc điện thoại thông minh Pixel và Pixel XL của hãng, Google bắt đầu triển khai Assistant trên các thiết bị Android khác vào tháng 2 năm 2017, bao gồm cả các điện thoại thông minh bên thứ ba và các thiết bị Android Wear, và được phát hành dưới dạng ứng dụng riêng biệt trên iOS vào tháng 5. Cùng với sự ra mắt một bộ phát triển phần mềm vào tháng 4 năm 2017, Assistant đã và đang được tiếp tục mở rộng hỗ trợ cho một lượng lớn thiết bị, bao gồm cả xe hơi và các thiết bị nhà thông minh. Các chiéc năng của Assistant cũng có thể được bổ sung bởi các nhà phát triển bên thứ ba. Người dùng chủ yếu có thể tương tác với Google Assistant qua giọng nói tự nhiên, hoặc có thể nhập qua bàn phím. Các chức năng cơ bản của nó cũng tương tự như Google Now, như tìm kiếm trên Internet, đặt sự kiện trên lịch và báo thức, điều chỉnh cài đặt phần cứng trên thiết bị người dùng và hiển thị thông tin từ tài khoản Google của người dùng. Google cũng bổ sung các tính năng khác cho Assistant bao gồm khả năng nhận diện vật thể và thu thập thông tin về vật thể thông qua máy ảnh của thiết bị, cùng với việc hỗ trợ mua sản phẩm và chuyển tiền. Google Assistant, với các chức năng cơ bản tương tự như Google Now, có thể tìm kiếm trên Internet, đặt lịch sự kiện và báo thức, điều chỉnh cài đặt phần cứng trên thiết bị của người dùng, và hiển thị thông tin từ tài khoản Google của người dùng. Không giống như Google Now, Assistant có thể tham gia các cuộc trò chuyện hai chiều giữa phần mềm và người dùng, sử dụng thuật toán xử lý ngôn ngữ tự nhiên của Google. Các kết quả tìm kiếm được hiển thị theo dạng thẻ, người dùng có thể nhấp vào để mở trang. Google Assistant có thể lập một danh sách mua sắm; tính năng này từng được áp dụng trên dịch vụ ghi chú Google Keep, nhưng sau đó được chuyển sang Google Express và ứng dụng Google Home vào tháng 4 năm 2017. Để sử dụng google assistant chúng ta sử dụng source code từ chính assistant sdk do chính google cloud cung cấp tại địa chỉ: https://github.com/googlesamples/assistant-sdk-python/blob/master/google- assistant-sdk/googlesamples/assistant/library/hotword.py Ở đây chúng ta chú ý các sự kiện sẽ xảy ra để có thể tinh chỉnh code lại theo ý của mình. Ở class google.assistant.library.event.EventType ta có các sự kiện sau: ON_START_FINISHED = 0 Sự kiện này thông báo quá trình khởi động hoàn tất.
  • 47. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 22
  • 48. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT ON_CONVERSATION_TURN_STARTED = 1 Sự kiện này thông báo quá trình chuyển đổi bắt đầu. ON_CONVERSATION_TURN_TIMEOUT = 2 Sự kiện này thông báo quá trình chuyển đổi đã bị quá hạn ON_END_OF_UTTERANCE = 3 Sự kiện này thông báo google assistant đã dừng việc lắng nghe người dùng. Google assistant không nhận thêm dữ liệu từ người dùng nữa. ON_RECOGNIZING_SPEECH_FINISHED = 5 Sự kiện này thông báo google assistant đã hoàn tất quá trình chuyển đổi. ON_RESPONDING_STARTED = 6 Sự kiện này thông báo google assistant bắt đầu trả lời yêu cầu của người dùng ON_RESPONDING_FINISHED = 7 Sự kiện này thông báo google assistant đã hoàn tất việc trả lời yêu cầu của người dùng ON_NO_RESPONSE = 8 Sự kiện này thông báo google assistant đã hoàn thành yêu cầu của người dùng nhưng không có tín hiệu trả lời. ON_CONVERSATION_TURN_FINISHED = 9 Sự kiện này thông báo lượt sử dụng này đã hết. ON_ALERT_STARTED = 10 Sự kiện này thông báo tín hiệu báo động được mở. ON_ALERT_FINISHED = 11 Sự kiện này thông báo tín hiệu báo động đã kết thúc. Sự kiện quan trọng chúng ta cần chú ý để thực hiện project này là ON_RECOGNIZING_SPEECH_FINISHED. Khi người dúng nhập dữ liệu dạng âm thanh vào thiết bị. Thì sự kiện này thông báo quá trình chuyển đổi dữ liệu âm thanh
  • 49. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 23
  • 50. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 2: TRỢ LÍ ẢO GOOGLE ASSITANT sang văn bản đã hoàn tất. Chúng ta có thể lấy dữ liệu văn bản ở bước này để tiến thành các hành động mà ta muốn. Ví dụ: if event.type == EventType.ON_RECOGNIZING_SPEECH_FINISHED: temp = event.args if temp["text"] == "fan on": print("Turnning Fan On") assistant.stop_conversation() elif temp["text"] == "fan off": print("Turnning Fan Off") assistant.stop_conversation() elif temp["text"] == "light on": print("Turning Light On") assistant.stop_conversation() elif temp["text"] == "light off": print("Turning Light Off") assistant.stop_conversation() Trong ví dụ trên ta bắt các trường hợp khi người dùng nói câu “fan on” hoặc “fan off” để tiến hành bật, tắt quạt máy một cách tự động.
  • 51. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 24
  • 52. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER 3.1 Khởi tạo website 3.1.1 Ngôn ngữ PHP PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới. Thẻ <?php và thẻ ?> sẽ đánh đấu sự bắt đầu và sự kết thúc của phần mã PHP qua đó máy chủ biết để xử lý và dịch mã cho đúng. Đây là một điểm khá tiện lợi của PHP giúp cho việc viết mã PHP trở nên khá trực quan và dễ dàng trong việc xây dựng phần giao diện ứng dụng HTTP. Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập nên nhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô doanh nghiệp. Hình 3.1 Logo ngôn ngữ PHP
  • 53. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 25
  • 54. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER PHP 3 PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi với các phiên bản PHP mà chúng ta được biết ngày nay. Nó đã được Andi Gutmans và Zeev Suraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trước đó. Lý do chính mà họ đã tạo ra phiên bản này là do họ nhận thấy PHP/FI 2.0 hết sức yếu kém trong việc phát triển các ứng dụng thương mại điện tử mà họ đang xúc tiến trong một dự án của trường đại học. Trong một nỗ lực hợp tác và bắt đầu xây dựng dựa trên cơ sở người dùng đã có của PHP/FI, Andi, Rasmus và Zeev đã quyết định hợp tác và công bố PHP 3.0 như là phiên bản thế hệ kế tiếp của PHP/FI 2.0, và chấm dứt phát triển PHP/FI 2.0. Một trong những sức mạnh lớn nhất của PHP 3.0 là các tính năng mở rộng mạnh mẽ của nó. Ngoài khả năng cung cấp cho người dùng cuối một cơ sở hạ tầng chặt chẽ dùng cho nhiều cơ sở dữ liệu, giao thức và API khác nhau, các tính năng mở rộng của PHP 3.0 đã thu hút rất nhiều nhà phát triển tham gia và đề xuất các mô đun mở rộng mới. Hoàn toàn có thể kết luận được rằng đây chính là điểm mấu chốt dẫn đến thành công vang dội của PHP 3.0. Các tính năng khác được giới thiệu trong PHP 3.0 gồm có hỗ trợ cú pháp hướng đối tượng và nhiều cú pháp ngôn ngữ nhất quán khác. Ngôn ngữ hoàn toàn mới đã được công bố dưới một cái tên mới, xóa bỏ mối liên hệ với việc sử dụng vào mục đích cá nhân hạn hẹp mà cái tên PHP/FI 2.0 gợi nhắc. Nó đã được đặt tên ngắn gọn là 'PHP', một kiểu viết tắt hồi quy của "PHP: Hypertext Preprocessor". Vào cuối năm 1998, PHP đã phát triển được con số cài đặt lên tới hàng chục ngàn người sử dụng và hàng chục ngàn Web site báo cáo là đã cài nó. Vào thời kì đỉnh cao, PHP 3.0 đã được cài đặt cho xấp xỉ 10% số máy chủ Web có trên mạng Internet. PHP 3.0 đã chính thức được công bố vào tháng 6 năm 1998, sau thời gian 9 tháng được cộng đồng kiểm nghiệm. PHP 4 Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức được công bố, Andi Gutmans và Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõi của PHP. Mục đích thiết kế là nhằm cải tiến tốc độ xử lý các ứng dụng phức tạp, và cải tiến tính mô đun của cơ sở mã PHP. Những ứng dụng như vậy đã chạy được trên PHP 3.0 dựa trên các tính năng mới và sự hỗ trợ khá nhiều các cơ sở dữ liệu và API của bên thứ ba, nhưng PHP 3.0 đã không được thiết kế để xử lý các ứng dụng phức tạp như thế này một cách có hiệu quả.
  • 55. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 26
  • 56. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER Một động cơ mới, có tên 'Zend Engine' (ghép từ các chữ đầu trong tên của Zeev và Andi), đã đáp ứng được các nhu cầu thiết kế này một cách thành công, và lần đầu tiên được giới thiệu vào giữa năm 1999. PHP 4.0, dựa trên động cơ này, và đi kèm với hàng loạt các tính năng mới bổ sung, đã chính thức được công bố vào tháng 5 năm 2000, gần 2 năm sau khi bản PHP 3.0 ra đời. Ngoài tốc độ xử lý được cải thiện rất nhiều, PHP 4.0 đem đến các tính năng chủ yếu khác gồm có sự hỗ trợ nhiều máy chủ Web hơn, hỗ trợ phiên làm việc HTTP, tạo bộ đệm thông tin đầu ra, nhiều cách xử lý thông tin người sử dụng nhập vào bảo mật hơn và cung cấp một vài các cấu trúc ngôn ngữ mới. Với PHP 4, số nhà phát triển dùng PHP đã lên đến hàng trăm nghìn và hàng triệu site đã công bố cài đặt PHP, chiếm khoảng 20% số tên miền trên mạng Internet. Nhóm phát triển PHP cũng đã lên tới con số hàng nghìn người và nhiều nghìn người khác tham gia vào các dự án có liên quan đến PHP như PEAR, PECL và tài liệu kĩ thuật cho PHP. PHP 5 Sự thành công hết sức to lớn của PHP 4.0 đã không làm cho nhóm phát triển PHP tự mãn. Cộng đồng PHP đã nhanh chóng giúp họ nhận ra những yếu kém của PHP 4 đặc biệt với khả năng hỗ trợ lập trình hướng đối tượng (OOP), xử lý XML, không hỗ trợ giao thức máy khách mới của MySQL 4.1 và 5.0, hỗ trợ dịch vụ web yếu. Những điểm này chính là mục đích để Zeev và Andi viết Zend Engine 2.0, lõi của PHP 5.0. Một thảo luận trên Slashdot đã cho thấy việc phát triển PHP 5.0 có thể đã bắt đầu vào thời điểm tháng 12 năm 2002 nhưng những bài phỏng vấn Zeev liên quan đến phiên bản này thì đã có mặt trên mạng Internet vào khoảng tháng 7 năm 2002. Ngày 29 tháng 6 năm 2003, PHP 5 Beta 1 đã chính thức được công bố để cộng đồng kiểm nghiệm. Đó cũng là phiên bản đầu tiên của Zend Engine 2.0. Phiên bản Beta 2 sau đó đã ra mắt vào tháng 10 năm 2003 với sự xuất hiện của hai tính năng rất được chờ đợi: Iterators, Reflection nhưng namespaces một tính năng gây tranh cãi khác đã bị loại khỏi mã nguồn. Ngày 21 tháng 12 năm 2003: PHP 5 Beta 3 đã được công bố để kiểm tra với việc phân phối kèm với Tidy, bỏ hỗ trợ Windows 95, khả năng gọi các hàm PHP bên trong XSLT, sửa chữa nhiều lỗi và thêm khá nhiều hàm mới. PHP năm bản chính thức đã ra mắt ngày 13 tháng 7 năm 2004 sau một chuỗi khá dài các bản kiểm tra thử bao gồm Beta 4, RC 1, RC2, RC3. Mặc dù coi đây là phiên bản sản xuất đầu tiên nhưng PHP 5.0 vẫn còn một số lỗi trong đó đáng kể là lỗi xác thực HTTP. Ngày 14 tháng 7 năm 2005, PHP 5.1 Beta 3 được PHP Team công bố đánh dấu sự chín muồi mới của PHP với sự có mặt của PDO, một nỗ lực trong việc tạo ra một hệ thống API nhất quán trong việc truy cập cơ sở dữ liệu và thực hiện các câu truy
  • 57. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 27
  • 58. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER vấn. Ngoài ra, trong PHP 5.1, các nhà phát triển PHP tiếp tục có những cải tiến trong nhân Zend Engine 2, nâng cấp mô đun PCRE lên bản PCRE 5.0 cùng những tính năng và cải tiến mới trong SOAP, streams và SPL. PHP 7 Hiện nay phiên bản tiếp theo của PHP đang được phát triển, PHP sáu bản sử dụng thử đã có thể được download tại địa chỉ http://snaps.php.net. Phiên bản PHP 6 được kỳ vọng sẽ lấp đầy những khiếm khuyết của PHP ở phiên bản hiện tại, ví dụ: hỗ trợ namespace (hiện tại các nhà phát triển vẫn chưa công bố rõ ràng về vấn đề này); hỗ trợ Unicode; sử dụng PDO làm API chuẩn cho việc truy cập cơ sở dữ liệu, các API cũ sẽ bị đưa ra thành thư viện PECL... 3.1.2 Phương thức GET and POST 3.1.2.1 Phương thức GET Phương thức GET là phương thức gửi dữ liệu thông qua đường dẫn URL nằm trên thanh địa chỉ của Browser. Server sẽ nhận đường dẫn đó và phân tích trả về kết quả cho bạn. Server sẽ phân tích tất cả những thông tin đằng sau dấu hỏi (?) chính là phần dữ liệu mà Client gửi lên. Ví dụ: Với URL freetuts.net?id=12 thì Server sẽ nhận được giá trị id = 12 Để truyền nhiều dữ liệu lên Server ta dùng dấu & để phân cách giữa các cặp giá trị. Giả sử tôi muốn truyền id = 12 và title = ‘method_get’ thì URL sẽ có dạng freetuts.net?id=12&title=method_get. Lưu ý với các bạn là vị trí các cặp giá trị không quan trọng, nghĩa là cặp title có thể nằm trước cặp id cũng được. Tất cả các dữ liệu mà Client gửi lên bằng phương thức GET đều được lưu trong một biến toàn cục mà PHP tự tạo ra đó là biến $_GET, biến này là kiểu mảng kết hợp lưu trữ danh sách dữ liệu từ client gửi lên theo quy luật key => value. Ví du với URL freetuts.net?id=12&title=method_get thì dữ liệu sẽ được lưu trong biến $_GET dưới dạng: $_GET = array( 'id' => '12', 'title' => 'method_get' ); Vì thế để lấy dữ liệu thì ta chỉ cần làm như sau:
  • 59. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 28
  • 60. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER // Lấy ID $id = $_GET['id']; echo $id; // kết quả là 12 // Lấy title $title = $_GET['title']; echo $title; // kết quả là method_get 3.1.2.2 Phương thức POST Với phương thức GET thì dữ liệu được thấy trên URL thì phương thức POST thì hoàn toàn ngược lại, POST sẽ gửi dữ liệu qua một cái form HTML và các giá trị sẽ được định nghĩa trong các input gồm các kiểu (textbox, radio, checkbox, password, textarea, hidden) và được nhận dang thông qua tên (name) của các input đó. Tất cả các dữ liệu gửi bằng phương thức POST đều được lưu trong một biến toàn cục $_POST do PHP tự tạo ra, vì thế để lấy dữ liệu thì bạn chỉ cần lấy trong biến này là được. Cũng như lưu ý với các bạn là trước khi lấy phải dùng hàm isset($bien) để kiểm tra có hay không nhé. if (isset($_POST['id'])){ $id = $_POST['id']; } 3.2.3.3 So sánh GET và POST Giống nhau: Đều gửi dữ liệu lên Server Khác nhau: Phương thức POST bảo mật hơn GET vì dữ liệu được gửi ngầm bằng mắt thường không thể nhìn thấy được. Phương thức GET dữ liệu được gửi tường minh, chúng ta có thể thấy trên URL nên nó không bảo mật. Phương thức GET luôn luôn nhanh hơn POST vì dữ liệu gửi đi được Browser giữ lại trong cache. Khi thực thi với POST thì Server luôn thực thi lệnh rồi trả về cho Client, còn với GET thì Browser sẽ kiểm tra trong cache có chưa, nếu có thì trả về ngay chứ không cần gửi lên Server.
  • 61. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 29
  • 62. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER Khi nào dùng GET - POST Khi dữ liệu bạn muốn SEO thì phải sử dụng phương thức GET. Khi dữ liệu bạn không cần bảo mật thì dùng phương thức GET, ngược lại dữ liệu bảo mật thì dùng phương thức POST. Ví dụ khi đăng nhập, Comment, đăng tin dùng phương thức POST. Còn khi lấy tin ra thì dùng phương thức GET… Khi request sử dụng câu lệnh select thì dùng GET, khi request có sử dụng lệnh insert update, delete thì nên dùng POST. 3.1.3 Cơ sở dữ liệu 3.1.3.1 Định nghĩa: Là một tập hợp thông tin có cấu trúc. Tuy nhiên, thuật ngữ này thường dùng trong công nghệ thông tin và nó thường được hiểu rõ hơn dưới dạng một tập hợp liên kết các dữ liệu, thường đủ lớn để lưu trên một thiết bị lưu trữ như đĩa hay băng. Dữ liệu này được duy trì dưới dạng một tập hợp các tập tin trong hệ điều hành hay được lưu trữ trong các hệ quản trị cơ sở dữ liệu. 3.1.3.2. Ưu điểm: - Giảm sự trùng lặp thông tin xuống mức thấp nhất. Do đó đảm bảo thông tin có tính nhất quán và toàn vẹn dữ liệu. - Đảm bảo dữ liệu có thể được truy xuất theo nhiều cách khác nhau. - Nhiều người có thể sử dụng một cơ sở dữ liệu. 3.1.3.3. Nhược điểm: - Tính chủ quyền của dữ liệu: • Thể hiện ở phương diện an toàn dữ liệu. • Khả năng biểu diễn mỗi liên hệ ngữ nghĩa của dữ liệu và tính chính xác của dữ liệu. • Người khai thác cơ sở dữ liệu phải cập nhật cho CSDL những thông tin mới nhất. - Tính bảo mật và quyền khai thác thông tin của người sử dụng: • Do ưu điểm CSDL có thể cho nhiều người khai thác đồng thời. nên cần phải có một cơ chế bảo mật phân quyền khai thác CSDL. • Các hệ điều hành nhiều người sử dụng hay cục bộ đều cung cấp cơ chế này. - Tranh chấp dữ liệu: • Khi nhiều người cùng truy nhập CSDL với các mục đích khác nhau. Rất có thể sẽ xảy ra hiện tượng tranh chấp dữ liệu. • Cần có cơ chế ưu tiên khi truy cập CSDL. Ví dụ: admin luôn có thể truy cập cơ sở dữ liệu.
  • 63. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 30
  • 64. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER • Cấp quyền ưu tiên cho từng người khai thác. - Cần đảm bảo an toàn dữ liệu khi có sự cố: • Khi CSDL nhiều và được quản lý tập trung. Khả năng rủi ro mất dữ liệu rất cao. Các nguyên nhân chính là mất điện đột ngột hoặc hỏng thiết bị lưu trữ. • Hiện tại có một số hệ điều hành đã có cơ chế tự động sao lưu ổ cứng và fix lỗi khi có sự cố xảy ra. • Tuy nhiên: cẩn tắc vô áy náy. Chúng ta nên sao lưu dự phòng cho dữ liệu đề phòng trường hợp xấu xảy ra. 3.1.3.4 Sử Dụng Cơ Sở Dữ Liệu MySQL Tạo bảng: Lệnh để tạo một bảng dữ liệu trong MySQL cần bao gồm: Tên bảng Tên các trường Định nghĩa cho mỗi trường Cú pháp Dưới đây là cú pháp SQL cơ bản để tạo một bảng trong MySQL: CREATE TABLE ten_bang (ten_cot kieu_du_lieu_cucot); Dưới đây là ví dụ để tạo một bảng có tên là sinhvienk60 với các trường mssv, ho, ten, tuoi, diemthick trong cơ sở dữ liệu sinhvien: Ghi chú: Nếu bạn có nhiều cơ sở dữ liệu, thì để tạo bảng sinhvienk60 có trong cơ sở dữ liệu sinhvien thì trước hết bạn phải chọn cơ sở dữ liệu đó với lệnh USE. CREATE TABLE sinhvienk60 ( mssv INT NOT NULL AUTO_INCREMENT, ho VARCHAR(255) NOT NULL, ten VARCHAR(255) NOT NULL, tuoi INT NOT NULL, diemthi FLOAT(4,2) NOT NULL, PRIMARY KEY (mssv) ); Một số khái niệm cần giải thích: Thuộc tính NOT NULL của trường đang được sử dụng bởi vì chúng ta không muốn trường này là NULL. Vì thế, nếu người dùng cố gắng tạo một bản ghi có giá trị NULL, thì MySQL sẽ tạo một lỗi.
  • 65. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 31
  • 66. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER Thuộc tính AUTO_INCREMENT nói cho MySQL tự động tăng khóa chính và thêm giá trị có sẵn tiếp theo tới trường id. Từ khóa PRIMARY KEY được sử dụng để định nghĩa một cột là PRIMARY KEY (khóa chính). Bạn có thể sử dụng nhiều cột phân biệt nhau bởi dấu phảy để định nghĩa một PRIMARY KEY. Xóa bảng: Để xóa một bảng trong MySQL đang tồn tại là khá đơn giản, nhưng bạn cần thật cẩn thận trong khi xóa bất kỳ bảng nào, bởi vì bạn sẽ mất toàn bộ dữ liệu đã được lưu giữ trong bảng đó và không thể phục hồi lại được. Cú pháp SQL chung để xóa một bảng MySQL là: DROP TABLE ten_bang; Ví dụ Để xóa bảng sinhvienk60 đã tạo ở chương trước, bạn sử dụng: DROP TABLE sinhvienk60; CHÈN ( INSERT INTO): Để chèn dữ liệu vào trong bảng MySQL, bạn sẽ cần sử dụng lệnh SQL là INSERT INTO. Cú pháp SQL cơ bản của lệnh INSERT INTO để chèn dữ liệu vào trong bảng MySQL là: INSERT INTO ten_bang ( truong1, truong2,...truongN ) VALUES ( giatri1, giatri2,...giatriN ); Để chèn kiểu dữ liệu chuỗi, điều bắt buộc là bạn phải giữ tất cả giá trị trong các trích dẫn đơn hoặc trích dẫn kép, ví dụ: "giatri". CHỌN ( SELECT): Lệnh SELECT trong SQL được sử dụng để lấy dữ liệu từ MySQL Database. Cú pháp SQL cơ bản của lệnh SELECT để lấy dữ liệu từ bảng MySQL là: SELECT truong1, truong2,...truongN FROM ten_bang [menhDe WHERE] [OFFSET M ][LIMIT N] Bạn có thể lấy một hoặc nhiều trường trong một lệnh SELECT đơn.
  • 67. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 32
  • 68. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER Bạn có thể xác định một dấu sao (*) thay cho các trường. Trong trường hợp này, lệnh SELECT sẽ trả về tất cả các trường. Bạn có thể xác định bất kỳ điều kiện nào bởi sử dụng mệnh đề WHERE. Bạn có thể xác định một offset bởi sử dụng OFFSET để từ đó lệnh SELECT này sẽ bắt đầu trả về các bản ghi. Theo mặc định, offset là 0. Bạn có thể giới hạn số kết quả trả về bởi sử dụng thuộc tính LIMIT. Ví dụ để lấy dữ liệu trong một bảng trong MySQL Sau đây là ví dụ để lấy tất cả bản ghi có trong bảng sinhvienk60 có trong cơ sở dữ liệu sinhvien trong MySQL: SELECT * FROM sinhvienk60; Kết quả như sau: Hình 3.2 Truy vấn SELECT trong MySQL CẬP NHẬT (SELECT): Dữ liệu đang tồn tại trong một bảng MySQL có thể cần được sửa đổi. Bạn có thể thực hiện điều này bởi sử dụng lệnh UPDATE trong SQL. Lệnh này sẽ sửa đổi bất kỳ giá trị trường nào trong bất cứ bảng MySQL nào. Dưới đây là cú pháp SQL chung của lệnh UPDATE để sửa đổi dữ liệu trong bảng MySQL: UPDATE ten_bang SET truong1=giaTri_moi_1, truong2=giaTri_moi_2 [MenhDe WHERE]; Bạn có thể cập nhật một hoặc nhiều trường. Bạn có thể xác định bất kỳ điều kiện nào bởi sử dụng mệnh đề WHERE. Bạn có thể cập nhật các giá trị trong một bảng đơn tại một thời điểm. Mệnh đề WHERE là hữu ích khi bạn muốn cập nhật các hàng đã chọn trong một bảng. Cập nhật dữ liệu trong MySQL
  • 69. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 33
  • 70. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER Bạn sử dụng lệnh UPDATE với mệnh đề WHERE trong SQL để cập nhật dữ liệu đã chọn vào trong bảng MySQL. Ví dụ: Ví dụ sau sẽ cập nhật bản ghi có mssv là 3 trong trường ten trong bảng sinhvienk60: UPDATE sinhvienk60 SET ten="Huong" WHERE mssv=3; Nếu bạn sử dụng lệnh SELECT với bảng trên: SELECT * FROM sinhvienk60; Thì kết quả là bản ghi có mssv=3 đã thay đổi tên từ Manh thành Hương. Hình 3.3 Truy vấn UPDATE trong MySQL 3.1.4 Giao diện Website (Front end) Bootstrap là một framework cho phép thiết kế website reponsive nhanh hơn và dễ dàng hơn Bootstrap là bao gồm các HTML templates, CSS templates và Javascript tao ra những cái cơ bản có sẵn như: typography, forms, buttons, tables, navigation, modals, image carousels và nhiều thứ khác. Trong bootstrap có thêm các plugin Javascript trong nó. Giúp cho việc thiết kế reponsive của bạn dễ dàng hơn và nhanh chóng hơn. Lịch sử Bootstrap Bootstrap là dược phát triển bởi Mark Otto và Jacob Thornton tại Twitter. Nó được xuất bản như là một mã nguồn mở vào tháng 8 năm 2011 trên GitHub. Tính ra đến thời điểm mình viết bài viết này nó cũng đã phát triển được 3 năm rồi. Bản bootstrap mới nhất bây giờ là bootstrap 3. Tại sao bạn nên sử dụng Bootstrap? Những điểm thuận lợi khi bản sử dụng bootstrap: Rất dễ để sử dụng: Nó đơn giản vì nó được base trên HTML, CSS và Javascript chỉ cẩn có kiến thức cơ bản về 3 cái đó là có thể sử dụng bootstrap tốt. Tính năng Responsive: Bootstrap’s xây dựng sẵn reponsive css trên các thiết bị phones, tablets, và desktops Mobile: Trong Bootstrap 3 mobile-first styles là một phần của core framework
  • 71. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 34
  • 72. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER Tương thích với trình duyệt: Nó tương thích với tất cả các trình duyệt (Chrome, Firefox, Internet Explorer, Safari, and Opera) nhưng lưu ý vì em IE vẫn rất hãm với IE phiên bản cũ vì thế việc IE9 hay IE8 đổ xuống không support là chuyện bình thường. Các bạn có dùng nên luy ý điểm này theo như mình dùng làm dự án thì nó support tuyệt vời trên IE10 đổ lên nhé, thấp nhất có lẽ là IE9 thôi còn IE8 thì không nên xài nhé. Lấy Bootstrap từ đâu? Có 2 cách để bạn có thể sử dụng Bootstrap trên web của bạn. Download Bootstrap từ getbootstrap.com Thêm Bootstrap từ CDN Note: cái này là kinh nghiệm thôi chia sẻ với mọi người là nên “Thêm nó từ CDN” vì theo như các diễn đàn chia sẻ thì nó có sẵn các cơ chế cache trên máy như thế sẽ không mất thời gian tải lại file nữa mà dùng luôn, còn không thì mỗi lần vào site mình lại phải tải bootstrap về sẽ mất time load trang. 3.2 Triển khai webserver lên server thật. 3.2.1 Hosting ● Hosting là dịch vụ lưu trữ dữ và chia sẻ liệu trực tuyến, là không gian trên máy chủ có cài đặt các dịch vụ Internet như world wide web (www), truyền file (FTP), Mail… ,bạn có thể chứa nội dung trang web hay dữ liệu trên không gian đó. Ví dụ: Bình thường bạn có 1 file trong máy tính, trong Localhost của bạn, giờ bạn muốn cho người khác xem thì bạn cần tải file đó lên mạng, nơi để lưu trữ file đó gọi là hosting. ● Các loại hosting – Shared hosting: Chia sẻ host – Collocated hosting: Thuê chỗ đặt máy chủ – Dedicated Server: Máy chủ dùng riêng – Virtual Private Server: VPS là máy chủ riêng ảo ● Các thông số cần biết trong hosting – Hệ điều hành (OS) của máy chủ : hiện tại có hai loại OS thông dụng là Linux và Windows. + Hosting Linux: là Hosting chuyên hỗ trợ ngôn ngữ lập trình PHP, Joomla, các mã nguồn mở… + Hosting Windows: Hosting Windows chuyên hỗ trợ về ngôn ngữ lập trình ASP, ASP.Net, HTML …. vì các Ngôn ngữ này, chạy chuyên trên Hosting Windows, do vậy khi load Web sẽ hỗ trợ tốt hơn, Hosting Windows có hỗ trợ ngôn ngữ PHP, nhưng chủ yếu, là hỗ trợ chính là ASP …
  • 73. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 35
  • 74. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER – Dung lượng: Bộ nhớ lưu trữ cho phép bạn tải file lên host – Băng thông: Bandwidth (băng thông) là thông số chỉ dung lượng thông tin tối đa mà website được lưu chuyển qua lại mỗi tháng – PHP: Phiên bản php hỗ trợ – Max file: Số lượng file tối đa có thể upload lên host – RAM: Bộ nhớ đệm – Addon domain: Số lượng domain bạn có thể trỏ tới hosting – Subdomain: Số lượng tên miền phụ có thể tạo ra cho mỗi tên miền – Park domain: Số lượng tên miền có thể parking – Email accounts: Số lượng email đi kèm với hosting – FTP accounts: Số lượng FTP account bạn có thể tạo và dùng nó upload dữ liệu lên hosting ● Tại sao cần phải mua hosting ? Nếu không có hosting thì website sẽ chỉ hoạt động trên máy tính bạn mà thôi, chỉ có mình bạn nhìn thấy, dữ liệu sẽ không được chia sẻ trên mạng. Vậy nên rất cần thiết để có một gói hosting. 3.2.2 Tên Miền ( Domain) Mục đích chính của tên miền là để cung cấp một hình thức đại diện, hay nói cách khác, dùng những tên dễ nhận biết, thay cho những tài nguyên Internet mà đa số được đánh địa chỉ bằng số. Cách nhìn trừu tượng này cho phép bất kỳ tài nguyên nào (ở đây là website) đều có thể được di chuyển đến một địa chỉ vật lý khác trong cấu trúc liên kết địa chỉ mạng, có thể là toàn cầu hoặc chỉ cục bộ trong một mạng intranet, mà trên thực tế là đang làm thay đổi địa chỉ IP. Việc dịch từ tên miền sang địa chỉ IP (và ngược lại) do hệ thống DNS trên toàn cầu thực hiện. 3.2.3 Cpanel và File Manager Sau khi đăng kí một hosting chúng ta sẽ được cung cấp một trang cpanel để quản lí website của mình. Ngoài ra còn có một chương trình File Manager để ta tiến hành upload mã nguồn website của mình vào đó. Để tải lên mã nguồn website của mình ta làm như sau:
  • 75. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 36
  • 76. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER Bước 1: Đăng nhập vào Cpanel và ấn vào biểu tượng File manager để mở trình quản lý File của Cpanel. Hình 3.4 File Manager trong cPanel Mở quản lý file Manager trong cPanel Bước 2: Truy cập vào thư mục cần upload file lên và ấn vào Upload. Trong giao diện File Manager của cPanel, các bạn có thể thao tác click chọn thư mục, tập tin, ấn Ctrl để chọn nhiều đối tượng, click đúp để truy cập một như mục, bôi đen hàng loạt để xóa và thực hiện các thao tác copy paste giống như trong window. Hãy tới thư mục mẹ cần upload lên và ấn vào nút Upload. Sau khi ấn, giao diện upload file của cPanel sẽ hiện ra , chúng ta sẽ chuyển tới bước 3 để thực hiện tiếp. Hình 3.5 Option Upload trong File Manager Giao diện File Manager Bước 3: Chọn file và upload. Sau khi giao diện Upload file hiện ra, các bạn có thể lập tức chọn Select File để up lên host luôn mà không cần suy nghĩ.
  • 77. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 37
  • 78. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 3: WEBSITE VÀ TRIỂN KHAI THỰC TẾ LÊN WEBSERVER Nếu bạn muốn ghi đè lên File trùng, hãy chọn Overwrite exitsting files. Nếu không chọn mục này, khi gặp file trùng hệ thống cũng vẫn thông báo và hỏi bạn có ghi đè hay không. Các bạn hoàn toàn có thể upload nhiều file cùng lúc trên giao diện này của cPanel. Hình 3.6 Giao diện Upload file trong cPanel Sau khi đã tiến hành up xong tất cả các file, ấn vào Go Back to “/home/yourname/public_html/thumuc” để quay lại trang quản lý file.
  • 79. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 38
  • 80. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG 4.1 Phần Cứng 4.1.1 Các linh kiện cần có: • Máy tính nhúng Raspberry Pi 3 để xử lí tín hiệu nhập vào ra điều khiển thiết bị ở ngỏ ra. Hình 4.1 Máy tính nhúng Rasberry Pi 3 • Loa để thể hiện phản hổi từ hệ thống google assistant. Hình 4.2 Loa
  • 81. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 39
  • 82. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG • Microphone để thu tín hiệu điều khiển từ người dùng. Hình 4.3 Microphone mini • Usb sound card để giải mã tín hiệu tương tự của microphone sang tín hiệu số cho raspberry pi xử lí. Hình 4.4 USB SOUND CARD
  • 83. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 40
  • 84. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG • Relay để rasberry pi có thể điều khiển các thiết bị điện gia dụng cho nhà. Hình 4.5 Relay 4.1.2 Sơ đồ kết nối Các linh kiện được kết nối theo sơ đồ sau: Hình 4.6 Sơ đồ kết nối của Raspberry pi với Relay
  • 85. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 41
  • 86. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG Hình 4.7 Kết nối giữa Raspberry Pi với loa và microphone
  • 87. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 42
  • 88. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG 4.1.3 Nguyên mẫu thành phẩm Hình 4.8 Các thành phần sau khi được lắp ghép vào nhau. Hình 4.9 Mô hình khi đã hoàn thiện
  • 89. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 43
  • 90. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG 4.2 Phần mềm 4.2.1 Chương trình nhận diện giọng nói trên raspberry pi Đầu tiên ta tải source code của đề tài này tại địa chỉ sau: github.com/trthong95/thesis Tiếp đó ta cài các gói thư viện cần thiết cho thư viện bằng lệnh: pip install -r requirements.txt Sau khi các gói thư viện đã được cài đặt ta chạy chương trình chính như sau: python hotword.py Khi chương trình được khởi động thành công thì console sẽ hiển thị như hình sau: Hình 4.10 Khởi động chương trình thành công Khi người dùng nói “Ok google” hoặc “Hey google” thì ứng dụng sẽ hiển thị như sau. Thông báo quá trình ghi âm lệnh điều khiển bắt đầu. Hình 4.11 Quá nhận dạng giọng nói bắt đầu Khi đã nhận được lệnh điều khiển và tiến hành chuyển đổi sang văn bản. Ứng dụng sẽ trả về dữ liệu có “text” như hình và thông báo có yêu cầu người dùng nhập lệnh tiếp theo hoặc dừng lại. Hình 4.12 Toàn bộ 1 phiên hoạt động của google assistant
  • 91. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 44
  • 92. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG Như ví dụ ở trên thì google assistant đã nhận được từ “hello” và chuyển nó sang dạng văn bản. Để bật tắt các thiết bị trong nhà ta dùng các cú pháp lệnh như sau khi sử dụng: “Turn the light on” – Dùng để bật đèn “Turn the light off” – Dùng để tắt đèn “Turn the fireplace on” – Dùng để bật lò sưởi “Turn the fireplace off” – Dùng để tắt lò sưởi “Turn the air conditioner on” – Dùng để bật máy lạnh “Turn the air conditioner off” – Dùng đẻ tắt máy lạnh 4.2.2 Hệ thống website và cách sử dụng Truy cập trang web tại địa chỉ: https://toitulam.online/thesis Hình 4.13 Giao diện chính của trang web Nội dung trang web có thông báo trạng thái của các thiết bị. Ở đây các thiết bị đèn, điều hòa và lò sưởi đang ở trạng thái tắt. Khi cần xem lịch sử bật tắt của các thiết bị ta bấm vào “Xem chi tiết”. Trang lịch sử sẽ xuất hiện như sau.
  • 93. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 45
  • 94. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net CHƯƠNG 4: LẮP RÁP VÀ SỬ DỤNG HỆ THỐNG Hình 4.14 Lịch sử 10 lần bật tắt gần nhất của thiết bị. Ở đây ta thấy trang web liệt kê cho ta 10 lần truy cập gần nhất của thiết bị ta muốn theo dỏi, trạng thái lúc đó và thời gian thiết bị được truy xuất. Ví dụ ở dòng 1: Thiết bị đèn được tắt vào lúc 7h 1p 10s ngày 13 tháng 12 năm 2017.
  • 95. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 46
  • 96. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net TỔNG KẾT TỔNG KẾT Google Cloud Platform là một hệ thống mạnh mẽ nhiều chức năng hữu ích nhưng lại rác rối, khó sử dụng. Đồ án đã giải thích được phần nào cách sử dụng Google Cloud Platform đặc biệt là về Google Assistant, Google Speech. Qua đó giúp phần lớn bạn trẻ có thể tiếp cận với nền tảng này để sử dụng nó vào các mục đích trong tương lai. Ngoài ra đề tài còn giới thiệu được cách sử dụng trợ lí ảo Google Assistant. Cách thiết kế một trang web và đưa trang web đó lên hosting và chạy thật tế. Hy vọng qua đề tài này có thể giúp mọi người có một cách nhìn đơn giản hơn về việc phát triển website cũng như ứng dụng trí thông minh nhân tạo vào đời sống hằng ngày. Lời cuối cùng em xin cám ơn Tiến Sĩ Chung Tấn Lâm đã nhiệt tình giúp đỡ em hết lòng để em có thể hoàn thành đề tài này. Kính chúc thầy sức khỏe và thành công.
  • 97. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 47
  • 98. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net TÀI LIỆU THAM KHẢO TÀI LIỆU THAM KHẢO 1. http://raspi.vn/ 2. https://freetuts.net 3. https://vi.wikipedia.org 4. https://www.pavietnam.vn/vn/ 5. https://genk.vn Cùng nhiều nguồn từ các trang tin công cộng khác.
  • 99. Luận Văn Group viết luận văn thạc sĩ,chuyên đề,khóa luận tốt nghiệp, báo cáo thực tập, Assignment, Essay Zalo/Sdt 0967 538 624/ 0886 091 915 Website:lamluanvan.net SVTH: NGUYỄN TRUNG THÔNG LỚP: D13CQKD02-N 48