TRƯỜNG ĐẠI HỌC LẠC HỒNG
KHOA CÔNG NGHỆ THÔNG TIN
----- -----
BÁO CÁO
NGHIÊN CỨU KHOA HỌC
ĐỀ TÀI:
ỨNG DỤNG CÔNG CỤ HỌC MÁY
TENSORFLOW VÀO ROBOT NAO NÂNG CAO
GIẢI PHÁP GIAO TIẾP NGÔN NGỮ TIẾNG ANH
VỚI TRẺ EM
ĐÀO MINH TRÍ
Biên Hòa, Tháng 11/2017
TRƯỜNG ĐẠI HỌC LẠC HỒNG
KHOA CÔNG NGHỆ THÔNG TIN
----- -----
BÁO CÁO
NGHIÊN CỨU KHOA HỌC
ĐỀ TÀI:
ỨNG DỤNG CÔNG CỤ HỌC MÁY
TENSORFLOW VÀO ROBOT NAO NÂNG CAO
GIẢI PHÁP GIAO TIẾP NGÔN NGỮ TIẾNG ANH
VỚI TRẺ EM
Sinh viên thực hiện: ĐÀO MINH TRÍ
Giảng viên hướng dẫn: Th.S Nguyễn Minh Sơn
BIÊN HÒA, 11/2017
LỜI CẢM ƠN
Chúng em xin chân thành cám ơn các giảng viên trường Đại Học Lạc Hồng, các
thầy cô khoa Công Nghệ Thông Tin đã giảng dạy và hướng dẫn chúng em trong suốt
thời gian chúng em theo học tại trường.
Chúng em xin gởi lời cám ơn đến Th.S Nguyễn Minh Sơn, là giáo viên đã tận
tình hướng dẫn chúng em hoàn thành đề tài nghiên cứu khoa học này.
Chúng em cũng xin gởi lời cám ơn đến Th.S Nguyễn Vũ Duy Quang, giáo viên
phản biện đã góp ý giúp chúng em hoàn thiện chương trình hơn.
Chúng em xin cám ơn các thầy, các cô trong khoa Công Nghệ Thông Tin đã có
những ý kiến đóng góp trong các buổi báo cáo tiến độ.
Ngoài ra em xin cám ơn thầy Nguyễn Minh Phúc, giáo viên chủ nhiệm lớp
13SE111 và các bạn trong lớp cùng toàn thể gia đình và người thân đã giúp đỡ, động
viên chúng em trong quá trình thực hiện đề tài này.
Với vốn kiến thức còn hạn chế cùng những điều kiện khách quan không cho
phép, đề tài của chúng em khó tránh khỏi những thiếu sót cũng như chưa đáp ứng đầy
đủ các yêu cầu. Do đó chúng em hy vọng tiếp tục nhận được những ý kiến đóng góp và
hướng dẫn của quý thầy cô để đề tài của chúng em được hoàn thiện hơn.
Chúng em xin chân thành cảm ơn.
Biên Hòa, tháng 11 năm 2017
Sinh viên thực hiện
Đào Minh Trí
MỤC LỤC
Phần mở đầu
Trang
1. Lý do chọn đề tài ................................................................................................... 1
2. Tình hình nghiên cứu ............................................................................................ 1
2.1. Trên thế giới................................................................................................... 1
2.2. Trong nước .................................................................................................... 2
3. Mục tiêu nghiên cứu.............................................................................................. 3
4. Đối tượng và phạm vi nghiên cứu......................................................................... 3
4.1. Đối tượng nghiên cứu .................................................................................... 3
4.2. Phạm vi nghiên cứu ....................................................................................... 3
5. Phương pháp nghiên cứu....................................................................................... 4
6. Những đóng góp mới và những vấn đề mà đề tài chưa thực hiện được ............... 4
6.1. Những đóng góp mới ..................................................................................... 4
6.2. Những vấn đề chưa thực hiện được ............................................................... 4
7. Kết cấu của đề tài .................................................................................................. 4
CHƯƠNG 1: TỔNG QUAN VỀ LÝ THUYẾT ................................................... 5
1.1 Giới thiệu về Robot NAO ............................................................................... 5
1.1.1 Robot NAO là gì? .................................................................................... 5
1.1.2 Các tính năng cơ bản ............................................................................... 6
1.1.3 Cấu hình .................................................................................................. 7
1.1.4 Hệ thống thị giác ..................................................................................... 9
1.1.5 Hệ thống âm thanh ................................................................................ 10
1.1.6 Tiểu kết .................................................................................................. 10
1.2 Giới thiệu về phần mềm phát triển ứng dụng Choregraphe ......................... 10
1.2.1 Choregraphe là gì? ................................................................................ 10
1.2.2 Giới thiệu về giao diện Choregraphe .................................................... 11
1.2.2.1 Màn hình trình đơn ...................................................................... 11
1.2.2.2 Thư viện hộp ................................................................................ 13
1.2.2.3 Không gian sơ đồ ......................................................................... 14
1.2.2.4 NAO 3D ....................................................................................... 15
1.2.2.5 Thư viện tư thế ............................................................................. 16
1.2.2.6 Trình giám sát video .................................................................... 16
1.2.3 Kết nối Choregraphe với Robot NAO ................................................... 17
1.2.4 Lập trình dựa theo sự kiện và theo thời gian ......................................... 17
1.2.4.1 Lập trình theo sự kiện .................................................................. 17
1.2.4.2 Lập trình theo thời gian ............................................................... 18
1.2.5 Tiểu kết .................................................................................................. 19
CHƯƠNG 2: GIỚI THIỆU VỀ CÔNG CỤ HỌC MÁY TENSORFLOW ..... 20
2.1 Tensorflow là gì? .......................................................................................... 20
2.2 Các thuộc tính cơ bản của Tensorflow ......................................................... 20
2.2.1 Rank....................................................................................................... 21
2.2.2 Shape ..................................................................................................... 21
2.2.3 Dtype ..................................................................................................... 21
2.2.4 Một số kiểu dữ liệu mẩu của Tensorflow .............................................. 22
2.3 Một số ứng dụng dùng Tensorflow .............................................................. 22
2.3.1 Makoto Koike và ứng dụng phân loại dưa leo ...................................... 22
2.3.2 Nhận dạng giọng nói ............................................................................. 23
2.3.3 Nhận dạng biển số xe ............................................................................ 23
2.4 Tiểu kết ......................................................................................................... 23
CHƯƠNG 3: XÂY DỰNG ỨNG DỤNG ............................................................ 24
3.1 Lưu đồ thực thi hệ thống .............................................................................. 24
3.2 Xây dựng môi trường phát triển ................................................................... 25
3.2.1 Cài đặt thư viện paramiko và scp trên Server và NAO ......................... 25
3.2.2 Cài đặt thư viện Tensorflow trên server ................................................ 25
3.3 Quy trình phát triển ....................................................................................... 26
3.3.1 Quy trình phát triển trên Choregraphe .................................................. 26
3.3.1.1 Xây dựng chức năng nghe ........................................................... 26
3.3.1.2 Xây dựng chức năng chụp ảnh .................................................... 27
3.3.1.3 Xây dựng chức năng gữi ảnh lên server ...................................... 27
3.3.1.4 Xây dựng chức năng nói của Robot ............................................ 28
3.3.1.5 Xây dựng chức năng kiểm tra từ vựng. ....................................... 29
3.3.2 Quá trình phát triển trên Server ............................................................. 30
3.3.2.1 Thu thập và tổ chức thư mục hình ảnh ........................................ 30
3.3.2.2 Training dữ liệu hình ảnh bằng tensorflow ................................. 31
3.3.2.3 Kết quả đạt được .......................................................................... 32
3.4 Tiểu kết ......................................................................................................... 33
KẾT LUẬN ............................................................................................................ 34
Tài liệu Tham khảo ............................................................................................... 35
DANH MỤC HÌNH
Hình 1-1.1: Trẻ em ở Birmingham đang chơi trò chơi nhận dạng động vật............. 2
Hình 1-1.2: Chương trình giáo dục của iSMART .................................................... 3
Hình 1-1: Robot NAO của Aldebaran ...................................................................... 5
Hình 1-2: Một số ngôn ngử lập trình mà nao hổ trợ ................................................ 6
Hình 1-3: Khớp nối của Robot NAO ........................................................................ 7
Hình 1-4: Các cảm biến của Robot NAO ................................................................. 8
Hình 1-5: Vùng hoạt động của camera Robot NAO ................................................. 9
Hình 1-6: Hệ thống âm thanh của Robot NAO....................................................... 10
Hình 1-7: Giao diện phần mềm Choregraphe ......................................................... 11
Hình 1-8: 14 Loại thư viện hộp của Choregraphe .................................................. 13
Hình 1-9: Hộp ......................................................................................................... 13
Hình 1-10: Kết nối hộp ........................................................................................... 14
Hình 1-11: Không gian sơ đồ của hộp hanh dong .................................................. 15
Hình 1-12: Màng hình mô phỏng NAO 3D ............................................................ 15
Hình 1-13: Thư viện tư thế...................................................................................... 16
Hình 1-14: Trình Video monitor ............................................................................. 16
Hình 1-15: Của sổ Connect to của Choregraphe .................................................... 17
Hình 1-16: : Sơ đồ kêt nối và thiết lập tham số của hộp ......................................... 17
Hình 1-17: Giao diện bên trong hộp Timeline ........................................................ 18
Hình 1-18: Của sổ Motion của NAO 3D ................................................................ 19
Hình 2-1: Chiếc máy phân loại dưa chuột của Makoto .......................................... 22
Hình 2-2: Chuyển phát âm thành đoạn văn bản trên thư viện TensorFlow ............ 23
Hình 2-3: Nhận dạng biển số xe với Tensorflow .................................................... 23
Hình 3-1: Lưu đồ của chương trình ........................................................................ 24
Hình 3-2: Box nghe và switch case ......................................................................... 26
Hình 3-3: Thông số cài đặt hộp Speech Reco ......................................................... 26
Hình 3-4: Hộp Tác giảke Picture ............................................................................ 27
Hình 3-5: Thông số của hộp Tác giảke Picture....................................................... 27
Hình 3-6: Tên của forder hình ảnh là tên của hình ảnh .......................................... 30
Hình 3-7: Thư mục dữ liệu hình ảnh ....................................................................... 30
Hình 3-8: Thư mục của tf_files ............................................................................... 31
Hình 3-9: Kết quả sau khi training .......................... Error! Bookmark not defined.
Hình 3-10: Trẻ đang học từ vựng với NAO ............................................................ 33
DANH MỤC BẢNG
Bảng 1-1: Chức năng trình đơn trên Choregraphe .................................................. 12
Bảng 1-2: Bảng chức năng của hộp ........................................................................ 14
Bảng 1-3: Màu sắc ứng với các loại tín hiệu .......................................................... 14
Bảng 2-1: Một số kiểu dữ liệu trong tensorflow ..................................................... 22
Bảng 3-1: So sánh các trường hợp hình ảnh ........................................................... 32
1
PHẦN MỞ ĐẦU
1. Lý do chọn đề tài
Học tiếng Anh từ độ tuổi từ 4 đến 10 tuổi đã được khoa học chứng minh mang lại
nhiều lợi ích về kỹ năng cho trẻ. Ở độ tuổi này, trẻ sẽ tiếp thu ngoại ngữ theo trình tự
“nghe, nói, đọc, viết”. Trong giai đoạn này trẻ sẽ tự tìm và sáng tạo ra được cho bản
thân mình một cách học theo một cách hoàn toàn bản năng. Nhờ đó, trẻ sẽ tiếp thu ngoại
ngữ dể dàng và nhanh hơn [1].
Ở nhà bạn thường ngạc nhiên khi trẻ có thể gần như hát lại các bài hát tiếng nước
ngoài chỉ sau vài lần xem truyền hình dù không biết chữ. Trong giai đoạn này trẻ con
thường bắt chước các âm tiết. Nên ở độ tuổi từ 4 đến 10 tuổi này trẻ sẽ rất dể tiếp thu
khi được hướng dẫn đúng cách.
Vì vậy, đề tài “Ứng dụng công cụ học máy Tensorflow vào Robot NAO nâng cao
giải pháp giao tiếp ngôn ngữ Tiếng Anh với trẻ em” hy vọng sẻ là một giải pháp cho trẻ
em hứng thú khi học tiếng Anh, kích thích được trí tò mò của trẻ, luyện cho trẻ khả năng
nghe và phát âm từ vựng một cách chính xác. Đồng thời ứng dụng được các công nghệ
xử lý ảnh từ nước ngoài (ở đây là công cụ học máy Tensorflow) vào phát triển và nâng
cao các giải pháp giáo dục trong nước.
Với việc nghiên cứu đề tài này, tác giả sẽ xây dựng một chương trình giúp trẻ chủ
động học tiếng Anh, bằng cách trẻ sẽ dùng hình ảnh từ bộ flashcard đã được tranning
trước đó để hỏi Robot NAO, Robot có nhiệm vụ trả lời từ trẻ vừa hỏi, đồng thời kiểm
tra được phát âm của trẻ.
2. Tình hình nghiên cứu
2.1. Trên thế giới
Nhận dạng động vật với Robot NAO
Đến thời điểm hiện tại Robot NAO đã ra đời được 19 năm kể từ phiên bản đầu
tiên năm 2008 do công ty Aldebaran Robotics sản xuất. Tác giả đã đọc được bài báo
“The robot teacher connecting with autistic children [2] ” được đăng vào ngày 22 tháng
10 năm 2017, nói về việc dùng Robot NAO kết nối với trẻ em mắc chứng tự kỹ ở
Birmingham được cùng công ty sản xuất làm ra. Robot NAO sẽ đọc ngẫu nhiên tên của
một loài động vật, trẻ em nghe và nhận biết đó là tên của con vật nào, sau đó tìm hình
ảnh của con vật đó đưa vào tầm nhìn của Robot NAO, lúc này Robot sẽ kiểm tra xem
2
có đúng là con vật đó không, nếu đúng thì chúc mừng trẻ bằng các hành động reo vang,
nếu sai thì động viên trẻ thử lại.
Hình 1-1.1: Trẻ em ở Birmingham đang chơi trò chơi nhận dạng động vật với sự dám
sát của Alexandra Sugurel của Aldebaran Robotic [2].
2.2. Trong nước
SoftBank Telecom Việt Nam đã ký kết hợp tác với Tổ chức giáo dục Hoa
Kỳ (IAE) và FPT Software nhằm đưa robot NAO ứng dụng trong lĩnh vực dạy
tiếng Anh tại Việt Nam vào ngày 26/8 vừa qua.
Trong hội thảo SoftBank đánh giá Việt Nam sẽ không nằm ngoài xu thế
chung của thế giới trong việc đưa robot ứng dụng vào đời sống. Mặc dù các sản
phẩm robot hình người đã được giới thiệu tại Việt Nam từ những năm 2004, tuy
nhiên đến nay những sản phẩm này mới chỉ dừng lại ở các mục đích nghiên cứu,
đào tạo [3].
Hiện nay trong nước iSMART Education là đơn vị đầu tiên đưa trí tuệ
nhân tạo robot NAO vào thí điểm giảng dạy tiếng Anh ở một số trường công lập
tại Việt Nam như trường tiểu học Tân Sơn Nhì, trường tiểu học Lê Lai
(TP.HCM), và trường tiểu học Nam từ Liêm (Hà Nội) [4].
Tuy vậy, ở trong nước Robot NAO chỉ mới được áp dụng vào chương
trình giáo dục nên việc nghiên cứu và phát triển cũng sẽ gặp nhiều khó khăn.
3
Tác giả hiện đang nghiên cứu Robot NAO ở mảng này hi vọng ứng dụng
sẽ được áp dụng được nhiều trường trong nước.
Hình 1-1.2: Chương trình giáo dục của iSMART
3. Mục tiêu nghiên cứu
Đề tài được thực hiện nhằm mục tiêu xây dựng một ứng dựng giúp tăng khả năng
phát âm ngay từ còn nhỏ đối với trẻ em từ 4 đến 10 tuổi, kích thích trí tò mò của trẻ với
tiếng Anh.
Nội dung chi tiết gồm:
- Robot nhận diện được hình ảnh đã được training từ công cụ học máy
Tensorflow và nói ra chính xác tên bằng tiếng Anh.
- Thông báo cho trẻ em lập tại từ Robot vừa nói.
- Kiểm tra được phát âm của trẻ.
- Thông báo cho trẻ đọc đúng hay sai khi đọc sai có thể chuyển qua từ
khác.
4. Đối tượng và phạm vi nghiên cứu
4.1. Đối tượng nghiên cứu
- Công cụ học máy Tensorflow.
- Sử dụng Robot NAO.
- Ứng dụng Choregraphe.
4.2. Phạm vi nghiên cứu
- Training bộ dữ liệu Tiếng Anh từ bộ flashcard dành cho trẻ em.
4
-
Robot NAO phân tích chính xác hình ảnh đã được học máy.
Robot kiểm tra được phát âm của trẻ.
Robot NAO thông báo cho trẻ đọc đúng hay sai.
5. Phương pháp nghiên cứu
-
Tìm hiểu bộ công cụ học máy Tensorflow và cách training dữ liệu trong
Tensorflow.
Tìm hiểu ứng dụng Choregraphe và sử dụng được các module trong ứng dụng.
Xây dựng Server ubuntu.
Truyền và nhận dữ liệu từ Robot NAO đến Server.
6. Những đóng góp mới và những vấn đề mà đề tài chưa thực hiện được
6.1. Những đóng góp mới
- Ứng dụng thư viện TensorFlow vào xử lý ảnh từ NAO.
- Phát triển ứng dụng giúp NAO trở nên thông minh hơn.
6.2. Những vấn đề chưa thực hiện được
- Đề tài chưa xây dựng được việc Robot có thể tự học được các hình ảnh.
- Robot chưa tự mình điều chỉnh đầu sao cho phù hợp với khung ảnh.
7. Kết cấu của đề tài
Luận văn được chia làm ba phần: phần mở đâu, phần nội dung và phần kết luận.
Phần mở đầu
Nếu lý do chọn đề tài, mục tiêu nghiên cứu, đối tượng, phạm vi và phương pháp
nghiên cứu.
Phần nội dung chính: gồm 3 chương
Chương 1: Cơ sở lý thuyết
Trong chương này tác giả sẽ trình bày về cấu tạo của Robot NAO, các
Box cơ bản và hay sử dụng trong ứng dụng Choregraphe.
Chương 2: Giới thiệu về công cụ học máy Tensorflow
Chương này sẽ giới thiệu tổng quan về Tensorflow các thuộc tính của
Tensor và các ứng dụng đã được thực hiện thành công.
Chương 3: Xây dựng chương trình.
Nêu lên cách xây dựng chương trình, cách training dữ liệu, xây dựng
một server, cách gữi và nhận dữ liệu từ Robot NAO lên server. Kết luận và
kết quả đạt được khi kết thúc thời gian nghiên cứu.
Phần kết luận
Đưa ra những kết luận đã đạt được và hướng có thể phát triển trong tương
lai.
5
CHƯƠNG 1: TỔNG QUAN VỀ LÝ THUYẾT
1.1 Giới thiệu về Robot NAO
Kể từ khi ra đời vào năm 2006 với mục đích để phụ giúp con người các công việc
nhà, trong giai đoạn đó đến nay nhiều người phát hiện ra Robot NAO thực sự có khả
năng trờ thành một ngôi sao trong thế giới giáo dục. Hiện nạy NAO đã có mặt trên 70
quốc gia tại rất nhiều trường học, từ tiểu học cho đến đại học [5]. NAO đem lại một môi
trường học tập vui nhộn, kích thích sự tò mò cho trẻ em. Các bạn có thể lập trình để bảo
NAO đi, múa hoặc nói một cách dể dàng.
Cứ như thế, NAO đã hoàn toàn chinh phục được cộng đồng. Bạn hãy thử tưởng
tượng xem điều bạn có thể làm với NAO. Một thế giới với những ứng dụng do bạn tự
viết ra, đáp ứng được nhu cầu của bạn và thị trường đang cần.
1.1.1 Robot NAO là gì?
Robot hình người NAO từ Aldebaran Robotics là robot kiến trúc mở cỡ
trung (Hình 1-1). Các robot NAO hiện đang được sử dụng trên toàn thế giới cho
các mục đích giáo dục và nghiên cứu tại hơn 480 trường đại học [5].
Hình 1-1: Robot NAO của Aldebaran
Aldebaran Robotics thiết kế công nghệ NAO để sử dụng trong cả các
chương trình giáo dục phổ thông và giáo dục bậc cao.
6
Do môi trường lập trình thân thiện với người dùng, bất cứ ai cũng có thể sử
dụng NAO bất chấp trình độ lập trình, và nó có thể thực hiện các hàm bậc cao sử
dụng kiến trúc mở.
NAO có thể giao tiếp với máy tính thông qua cả mạng có dây và mạng
không dây. Nhiều robot NAO có thể tương tác với nhau sử dụng cảm biến hồng
ngoại, mạng không dây, camera, micro và loa. Dữ liệu do người dùng nhập có thể
được thực hiện qua cảm biến liên lạc, camera và micro.
Phần mềm NAO được dựa trên nền tảng Gentoo Linux và hỗ trợ nhiều ngôn
ngữ lập trình. Các ngôn ngữ lập trình như C, C++, URBI, Python, và .Net
Framework, và Choregraphe có thể được sử dụng cho lập trình nền tảng đồ họa[5].
Hình 1-2: Một số ngôn ngử lập trình mà nao hổ trợ
1.1.2 Các tính năng cơ bản
Robot NAO cao 57.3cm, đường kính 27.5cm và cân nặng chỉ chưa tới 5.4kg.
Phần thân được chế tạo từ vật liệu nhựa đặc biệt và có trang bị pinlithium-ion
21.6V 2Ah cho phép thời gian sử dụng lên đến 90 phút, NAO có các cảm biến đa
dạng như cảm biến gyro 2 trục và cảm biến siêu âm.
Đầu của NAO có một hệ thống nhúng để điều khiển toàn diện, và một vi điều
khiển ARM ở trong ngực để điều khiển động cơ và năng lượng. Hệ thống nhúng
sử dụng nhúng Linux (32bit x 86ELF) và phần cứng của nó bao gồm GEODE x86
AMD, CPU 500MHz, SDRAM 256MB và bộ nhớ flash [5].
Robot NAO sử dụng hệ điều hành Gentoo linux. Các hoạt động của NAO
được quản lý bởi bộ khung NAOqi khi người dùng giao tiếp với NAO. Ngoài ra
Robot NAO còn có thể nghe qua micro, nói thông qua loa và thu nhận hình ảnh
qua 2 camera.
7
1.1.3 Cấu hình
Hình 1-3: Khớp nối của Robot NAO
Nhìn vào Hình 1-3 có thể thấy NAO có tổng cộng 25 khớp nối bao gồm:
2 khớp ở đầu.
12 khớp ở cánh tay đối xứng trái phải.
10 khớp ở chân đối xứng trái phải.
1 khớp ở hông.
Sử dụng phương pháp Roll-Pitch-Yaw để mô tả các khớp của NAO. Trong
đó HipYawPitch, một trong các khớp hông chỉ có một bậc tự do do cả khớp
trái/phải đều được vận hành bởi một cơ cấu chấp hành.
8
Hình 1-4: Các cảm biến của Robot NAO
Nhìn Hình 1-4 có thể thấy các cảm biến của Robot NAO bao gồm:
3 cảm biến tiếp xúc (TACTLIE SENSORS).
2 cảm biến hồng ngoại và đèn leg mắt (INFRARED
EMITTER/RECEIVER AND EYELEDS).
2 cảm biến siêu âm (SONARS).
2 cảm biến giảm xóc (BUMPERS).
1 cảm biến con quay hồi chuyển hai trục.
2 cảm biến gia tốc ba trục.
8 cảm biến giảm áp.
9
1.1.4 Hệ thống thị giác
Nhìn vào Hình 1-5 có 2 camera mô phỏng cho thị giác của Robot NAO.
Camera trên tập trung vào phía trước trong khi đó camera dưới tập trung vào phân
dưới chân. Hệ thống camera cả thể được dùng để nhận dạng điểm mốc, nhận diên
gương mặt hay vật thể tùy thuộc vào khả năng lập trình của mỗi người. Vì Robot
NAO có hổ trợ ngôn ngử C++ cho nên, việc lập trình nhận diện hình ảnh có thể
thực hiện bằng cách sử dụng thư viện OpenCV.
Hình 1-5: Vùng hoạt động của camera Robot NAO
Độ phân giải
VGA (640 x 480)
QVGA (320 x 240)
QQVGA (160 x 120)
Không gian màu
YUV422 (định dạng mặc định của camera)
YUV (24 bits)
Y (8 bits)
RGB (24 bits)
BGR (24 bits)
HSY (24 bits
10
1.1.5 Hệ thống âm thanh
Hình 1-6: Hệ thống âm thanh của Robot NAO
Robot NAO có 4 micro một ở mỗi bên tai một ở phía trước và một ở phía
sau và hai loa gắn ở hai bên tai.
Tác giả có thể sử dụng loa của NAO cho việc chơi nhạc và đọc văn bản do
người dùng nhập vào. Các micro có thể được sử dụng cho việc ghi âm, hoặc nhận
diện vị trí phát âm thanh.
1.1.6 Tiểu kết
Thông qua tìm hiểu về cấu hình, và các cảm biến mà Robot NAO hổ trợ, tác
giả sẽ tiếp tục tìm hiểu cách kết nối và các hộp trên phần mềm phát triển ứng dụng
Choregraphe do Aldebaran cung cấp. Để từ đó đưa ra hướng xây dựng và phát
triển chương trình.
1.2 Giới thiệu về phần mềm phát triển ứng dụng Choregraphe
Trên nền tảng xây dựng và phát triển ứng dụng cho Robot của Aldebaran, thì ứng
dụng Choregraphe cung cấp cho các lập trình viên một môi trường phát triển khá thuận
lợi với các module được xây dựng sẵn, lập trình viên có thể chạy thử trên NAO 3D
được tích hợp sẵn trong ứng dụng.
Ngoài ra đối với những người không biết về lập trình, người dùng cũng có thể tự
xây dựng cho mình một ứng dụng nhờ vào phần mềm phát triển Choregraphe.
1.2.1 Choregraphe là gì?
Choregraphe là một ứng dụng đa nền tảng có thể thực hiện được các hành
động của Robot NAO bằng lập trình dựa trên đồ họa. Không giống như lập trình
truyền thống lập trình đồ họa ít tập trung vào vào ngữ pháp, lập trình đồ họa được
thực hiện chủ yếu nhờ sử dụng chuột thay vì bàn phím để viết mã.
11
Choregraphe có thể chạy trên Window, Linux và Mac OS. Việc thực hiện
hành động của NAO trong Choregraphe liên quan đến các yếu tố kết hợp các box
cử động thành một nhóm tập trung vào một thời điểm hoặc một sự kiện.
1.2.2 Giới thiệu về giao diện Choregraphe
Giao diện Choregraphe được chia thành 4 nhóm khác nhau như Hình 1-7.
Ngoài ra các post Library (thư viện tư thế) và Video monitor (trình giám sát video)
cũng được cung cấp phục vụ cho công việc lập trình.
Hình 1-7: Giao diện phần mềm Choregraphe
Nhóm 1: Màn hình trình đơn.
Nhóm 2: Thư viện hộp.
Nhóm 3: Không gian sơ đồ.
Nhóm 4: NAO 3D.
1.2.2.1 Màn hình trình đơn
Trong trình đơn, phần Menu với các mục File( tập tin), Edit (chỉnh
sữa), Connection(kết nối), View(xem) và Help( trợ giúp), và các biểu tượng
trình đơn mô tả New Diagram(sơ đồ mới), Open(mở), Save(lưu),
Previous/Next(trước/sau), Connection (kết nối), Run(chạy), Cancel(hủy),
Debug View(xem hiệu chỉnh). Các chức năng được mô tả sau đây.
12
Trình đơn File
-
New project: Tạo một dự án mới.
Open project: Mở một dự án.
Open recent project: Mở dự án gần đây nhất.
Save project: Lưu dự án.
Exit thoát khỏi project.
Trình đơn Edit
-
Undo: Hủy thao tác vừa thực hiện.
Redo: Thực hiện lại thao tác vừa hũy bỏ.
Preferences: Cấu hình môi trường
Choregraphe.
Trình đơn Connection
-
Connection to: Kết nối từ Choregraphe tới
NAO.
Disconnet: Ngắt kết nối với NAO.
Upload to the robot Play: Gữi và thực hiện
chương trình trên NAO.
Stop: Dừng chương trình trên NAO
Connect to vitual robot: Kết nối với NAO
trong môi trường mô phỏng.
Trình đơn Behaviors
-
Kết nối từ Choregraphe tới NAO.
Ngắt kết nối tời NAO.
-
Nạp và chạy chương trình trên NAO.
Trình đơn View
-
Robot View: Kích hoạt NAO 3D trong môi
trường làm việc Choregraphe.
Video monitor: Trình giám sát video.
Pose library: Kích hoạt danh sách hộp ( Box
List).
Bảng 1-1: Chức năng trình đơn trên Choregraphe
- Xem thêm -