APP下载

基于Arduino的传菜机器人设计

2018-01-08杨立志

电脑知识与技术 2017年36期

杨立志

摘要:Arduino作为一种简单易用的电子平台,已得到广泛的应用,在动漫制作,游戏互动,甚至部分工业检测设备等领域Arduino控制器都表现出很好的应用效果,该文结合采用Arduino控制器设计的一种教学机器人以及将该机器人开发过程中涉及的知识点运用在高职C语言教学中的相关方法进行分析和探讨。

关键词:Arduino电子平台;教学机器人;高职C语言教学

中图分类号:TP317.4 文献标识码:A 文章编号:1009-3044(2017)36-0217-02

Abstract: Arduino as a kind of electronic platform is easy to use, has been widely used in animation, interactive games, and even part of the industrial testing equipment field Arduino controller shows a good application effect, this paper adopts a Arduino teaching robot controller design and the analysis and discussion of the knowledge involved the use of the related method in higher vocational C language teaching in the development process of the robot.

Key words: arduino electronic platform; Teaching robot; C language teaching in Polytechnic college Education

1 概述

一般情况下,C语言程序设计[1]是计算机软件设计从业人员的一门必修课,也是入门课,这门课程对于刚接触程序设计的高职计算机专业学生来说,有一定的学习难度,课程内的很多知识点都需要学生通过反复的实践验证才能做到内化于心,由于受C语言开发环境,教学环境等实际条件限制往往很难把知识点运行效果展现的生动有趣,吸引学生的眼球。致使许多学生在学习过程中渐渐失去了坚持下去的热情和耐心,从而导致后续的学习缺乏动力和必要的基础,甚至会造成部分学生心理上对程序设计产生畏惧感,影响到整个大学期间的学习。为了能有效调动学生学习C语言,自觉运用C语言解决问题的热情和主动性,从而提高C语言学习的效率。本文在教学过程中以arduino控制器[2,3]为平台设计了一种传菜机器人,作为C语言教学的案例,把相关知识点融入到该案例的各个实现环节。

2 传菜机器人功能设计

本文设计的传菜机器人[4]的基本功能以餐馆、饭店为应用环境,代替工作人员为顾客传送菜肴,该机器人的设计目标是作为一个完整的餐馆控制系统的一部分而构思的,机器人的一些功能是为了能够与餐馆控制系统中其他组成单元相配合而设计的,餐馆控制系统的总体功能结构如图1所示。

每个座位上放置点菜器,客人通过该点菜器选择自己需要的菜肴,下单后提交到厨房控制器上,厨房依据各个座位上客人的点菜清单进行炒菜,炒好后交给传菜机器人,由传菜机器人送到对应的桌上。管理人员通过手机、pad等终端设备可以查詢每天的销售情况,各个菜品的受欢迎程度等信息。其各个构成部分的相应功能为:

1) 点菜器

提供菜谱展示功能,向客人展示菜肴的图片、价格、简要介绍等信息。提供菜肴的状态信息,客户能实时了解自己点的菜当前处于哪种状态。客户能够浏览、选择、下单。

2) 厨房控制器

收集汇总各个点菜器上的点菜信息,向厨房提供客户的点菜情况,厨房确认后,向客户发送菜肴的状态信息。提供呼唤传菜机器人功能,更改菜肴信息功能,统计分析信息供手机查询功能。

3) 传菜机器人

接受厨房召唤,按照命令通过巡线功能将菜品送到指定的座位,通过语音向客人播报菜品信息及祝餐词。送餐途中遇到行人或其他障碍,通过语音提示让路信息。如果长时间无响应要能通知厨房端安排相关人员进行处理。送完菜后回到厨房指定位置待命。

4) 终端

能够查询菜肴的销量,受欢迎程度,销售额等信息。

上述厨房控制器、点菜器、终端三个组成部分,在硬件上主要通过arm处理器及相关外围部件完成,软件采用linux环境下的相关编程工具如qt、 android等进行设计,这些组件的功能由大学二、三年级的学生完成。而对于传菜机器人由于很多功能涉及的有关技术相对简单,借助arduino硬件平台及其开发环境可以很方便的实现,把这部分内容经过适当的处理,是可以作为C语言基础教学的一个组成部分的。

围绕C语言程序设计教学目标和应知应会技能要求,本文设计的传菜机器人的主要功能划分成图2所示的组成部分:

图2中基本运动控制单元主要完成机器人前进、后退、左右转弯,加、减速调节,停止等基本动作的实现,该部分内容相对简单,实施效果直观,可以把C语言基础知识如变量定义,分支结构使用等相关内容有机的组织起来开展教学。而对于其他功能单元,如巡线功能、避障功能等,实现过程相对较复杂,需要学生具备一定的C语言基础知识后,作为学习C语言后续知识的课堂任务或实践案例[5]。

3 课程任务设计

按照学生认知规律,结合传菜机器人设计目标,将传菜机器人教学过程设计为五个模块,具体如下表一所示,表一中给出的五个模块又被细化为16个子任务,将模块细化为子任务开展教学,有利于以项目小组的形式组织学生广泛参与[6],有利于把教师的“讲”和学生的“练”有机结合起来,授课的方式不再是以教师为主体,而是以学生为主体的讨论式、应用式的教学。注重学生在做中学,在学中做,“教学合一”,学练并重。教师可以充分发挥主导作用,边讲课,边演示,边指导;学生边学习,边动手,边提问,实现课堂理论教学与实践技能培养的融合。同时也有利于形成多元化考核思想,制定理论、实验、设计、实习考核标准及细则,有效体现过程考核,形成平时、期中、期末三个阶段性考核。并将理论考核、作业、课堂提问、教学考勤等因素考虑进去,最终形成综合成绩[7]。

通过子任务的实施,不仅能将C语言程序设计课程中基本语法、数据结构、基本语句及分支结构、函数定义与使用等相关内容贯穿融入到教学过程中,也能对教师测评教学效果,形成合理的教学评价体系提供很好的支撑。

4 总结

通过引入传菜机器人作为C语言基础课程教学项目,可以有效改变C语言运行环境枯燥,展现效果较差,不利于提高学生学习兴趣的状况。同时可以把教学过程转变为项目小组的形式开展教学,能有效形成教师主导,学生主体的应用式、讨论式教学氛围。实践表明,以传菜机器人作为C语言基础课程的教学项目,能够取得较好的教学效果。

参考文献:

[1] 李菁.浅谈C语言教学的改革[J]. 科学大众(科学教育),2017(3).

[2] 段学庆.C语言教学方法之浅析[J]. 教育教学论坛,2017(23).

[3] 戈惠梅,徐晓慧,顾志华. 基于Arduino的智能小车避障系统的设计[J]. 现代电子技术,2014(6).

[4] 张丽芳. 基于STEM的Arduino机器人教学项目设计研究[J].南京师范大学学报,2015(5).

[5] 陈亮.C语言教学如何提高实效性[J]. 科教导刊(中旬刊),2015(3).

[6] 段昌红. 高职“项目教学”实效性的个案分析[J]. 苏州大学学报,2015(4).

[7] 蒋述东. 项目教学的特征及其适应性研究[J]. 教育与职业, 2012(6).endprint