文库网
ImageVerifierCode 换一换
首页 文库网 > 资源分类 > PDF文档下载
分享到微信 分享到微博 分享到QQ空间

沪科教版普通高中教科书·信息技术选择性必修6 开源硬件项目设计.pdf

  • 资源ID:6956741       资源大小:5.98MB        全文页数:97页
  • 资源格式: PDF        下载积分:15文币
微信登录下载
快捷下载 游客一键下载
账号登录下载
三方登录下载: QQ登录 微博登录
二维码
扫码关注公众号登录
下载资源需要15文币
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 
账号:
密码:
验证码:   换一换
  忘记密码?
    
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

沪科教版普通高中教科书·信息技术选择性必修6 开源硬件项目设计.pdf

1、开源硬件项目设计普通高中教科书上海科技教育出版社选择性必修 6信息技术信息技术普通高中教科书选择性必修6开源硬件项目设计信息技术信息技术上海科技教育出版社PUTONG GAOZHONG JIAOKESHUXINXIJISHU普通高中教科书信息技术选择性必修6开源硬件项目设计上海科技教育出版社有限公司出版发行(上海市闵行区号景路159弄A座8楼邮政编码201101)湖南省新华书店经销湖南长沙鸿发印务实业有限公司印刷开本89012401/16印张62021年1月第1版2021年12月第3次印刷ISBN 978-7-5428-7415-3/G4353定价: 7.88元批准文号: 湘发改价费 2017

2、 343号举报电话: 12315ISBN 978-7-5428-7415-39 787542 874153此书如有印、 装质量问题, 请向印厂调换印厂地址: 长沙黄花印刷工业园三号电话: 0731-82755298此书如有印、 装质量问题, 请向印厂调换印厂地址: 长沙黄花印刷工业园三号电话: 0731-82755298ISBN 978-7-5428-7415-39 787542 874153此书如有印、 装质量问题, 请向印厂调换印厂地址: 长沙黄花印刷工业园三号电话: 0731-82755298普通高中教科书上海科技教育出版社信息技术选择性必修 5开源硬件项目设计选择性必修 6编写人员名单

3、主 编: 郑 骏 分册主编: 季 隽主要编写人员(以姓氏笔画为序):刘 帅 胡 杨 傅 瑛欢迎广大师生来电来函指出教材的差错和不足,提出宝贵意见。上海科技教育出版社地址: 上海市闵行区号景路 159 弄 A 座 8 楼 邮政编码: 201101 联系电话: 021-64702058 邮件地址: 亲爱的同学:大众创业、万众创新的时代已经到来,创客文化正蓬勃发展,基于开源硬件的创新作品如雨后春笋般不断涌现。利用 Arduino 和树莓派等开源硬件,即便不具备深厚专业知识的你,也能成为设计开发者,提高基于信息技术的创新能力。在开源硬件项目设计的学习中,我们将带领你通过剖析真实的开源硬件作品来了解开源

4、硬件的功能和特征 ; 从简单项目入手,体验开源硬件项目设计的一般流程;通过设计开发贴近生活的项目作品,理解和应用开源硬件实现信息输入、处理和输出的方式。在项目实践过程中,你将学会综合运用科学、技术、数学、工程及艺术等学科的知识解决问题。为了让你在学习开源硬件项目设计的过程中获得更大的成功,请浏览本书的栏目介绍。单元引言、学习目标和单元挑战从生活经验出发引入本单元将要学习的内容,提出本单元学习要达成的学习目标,预告学习完本单元后要接受的单元挑战。 项目引言和学习目标描述项目产生的背景和意义,介绍项目学习的主要内容,并提出一些具体问题,引导你带着问题探究。 项目学习指引 通过剖析真实的项目实施过程

5、,帮助你了解学科思想方法,理解相关概念,掌握具体技能。解释一些重要概念和术语,或提示相关知识和技术,帮助你抓住重点,扫除认知障碍。写给学生的话核心概念和小贴士提出若干问题引导你对技术背后的原理以及人、信息技术与社会的关系等进行思考和讨论。引导你利用网络、数字化工具和数字资源进行学习。提出活动任务,并引导你运用所学知识,使用信息技术工具进行探究、总结和展示。系统整理和归纳本项目的知识要点,方便你学习。补充更丰富的阅读材料,开阔你的视野。布置面向真实情境的项目任务,希望你综合运用本单元所学的知识与技能去解决问题。用思维导图可视化呈现本单元的知识脉络,提供基于学科核心素养的评价表,为你的学习表现进行

6、自我评价。在学习过程中,希望你勤实践体验、多思考讨论,借助各种数字化工具、资源进行学习与创新,不仅要理解和掌握具体的信息技术知识与技能,还要把握用信息技术解决问题的思想方法,并思考将信息技术应用于社会时所引发的各种挑战,以开放、包容的心态与信息技术、信息社会一起进步。编 者单元挑战拓展阅读知识链接活 动数字化学习单元小结?思考与讨论?目 录第一单元 开源硬件与信息技术创新.1项目一 探究开源硬件作品了解开源硬件的特征和价值.21. 认识开源硬件.32. 了解常见开源硬件的功能.53. 探究开源硬件的价值.7知识链接.10项目二 设计制作交通信号灯了解开源硬件项目设计的一般流程.141. 提出想

7、法 .152. 设计系统解决方案.163. 利用开源硬件实现解决方案.20知识链接.22单元挑战 设计制作小夜灯.27单元小结.28第二单元 基于开源硬件的信息系统.29项目三 设计制作低头报警器实现数据的输入、处理与输出.301. 提出想法 .312. 设计基于开源硬件的信息系统.313. 实现数据的采集、运算处理和输出.37知识链接.40项目四 设计制作自行车里程仪体验作品的迭代优化.441. 提出想法 .452. 设计符合事物特性的系统.453. 实现作品设计方案及其优化.51知识链接.56单元挑战 设计制作创意风扇.59单元小结.60第三单元 开源硬件项目设计与开发.61项目五 设计制

8、作智能园艺装置体验无线数据传输.621. 提出想法 .632. 设计基于无线数据传输的系统.643. 实现数据的采集及无线传输.70知识链接.71项目六 设计制作无人船模型利用输出数据驱动执行装置.741. 提出想法 .752. 根据应用情境设计系统.763. 实现数据驱动的动力控制.81知识链接.84单元挑战 设计制作远程快递收件盒 .87单元小结.88附录 部分名词术语中英文对照 .89我们正处在一个开放创新的信息社会中,信息的获取与分享变得与每个人息息相关。所有的人既是信息分享的受益者,也是集体智慧和信息的贡献者;既是产品的受益者,也是产品设计或改进的参与者。随着信息技术的发展,近年来涌

9、现出一大批开源硬件,它们降低了产品开发的复杂度,使人们不用花费大量时间去了解硬件的底层控制细节,从而能集中精力于设计和创造。基于开源硬件,从工程师到技术爱好者、艺术家,甚至年龄很小的学生,都能很方便地根据自己的设想或创意,制作出具备一定功能的信息系统,用信息技术实现创新。在本单元中,我们将剖析一些基于开源硬件的作品实例来认识开源硬件,了解其功能和特征;通过动手设计制作一个简单的开源硬件作品,体验使用开源硬件搭建信息系统的过程。第一单元 开源硬件与信息技术创新 认识开源硬件的特征与发展。 了解常见开源硬件的功能和特征。 理解利用开源硬件进行信息技术创新的意义。 体验基于开源硬件项目的设计制作基本

10、流程。 践行开源与知识分享的精神,理解保护知识 产权的意义。学习目标设计制作小夜灯单元挑战项目学习目标在本项目中,我们将结合一些案例了解开源硬件及利用开源硬件进行信息技术创新的意义。完成本项目学习,须回答以下问题:1. 什么是开源硬件?2. 常用开源硬件有哪些?3. 开源硬件是如何驱动创新的?4. 开源与保护知识产权矛盾吗?为什么?技术的发展使得创新的方式发生了深刻的变化,尤其是近年来因得益于开源硬件的流行,创新作品的品种及数量、产品产生的速度和频率、甚至质量等都在不断地提高。开源硬件正是创新的助推器,它所特有的开放、共享理念,让人们能够更便捷地获取和交流信息,如硬件装置的设计说明和使用说明、

11、作品设计文件、项目灵感和创意等。在这样一种协同和共享的环境中,人们能以较低的成本支撑创新,作品的开发周期大大缩减,从而提升了作品的竞争力(图 1-1)。那么,究竟什么是开源硬件?开源硬件具有哪些特征和功能?它是如何驱动创新的?项目一探究开源硬件作品了解开源硬件的特征和价值图 1-1 开源硬件带来的影响项目学习指引1. 认识开源硬件开源一词最初出自软件开发中。开源软件(open source software)是指源代码开放的软件,它能够被自由地使用、修改和分发。人们所熟悉的、用于移动设备的 Android(安卓)操作系统就是一款基于 Linux 的开源软件。开源硬件由某一团队或个人设计并开发,

12、开发完成后,开发者将该硬件的文件对大众免费开放,包括设计图、开发软件、开发文档、材料清单等,世界上任何人都可以对其进行加工、修改、重新设计、生产甚至销售。随着相关文件的公开和免费分享,开源硬件逐渐吸引各类爱好者和应用者。 这些爱好者、 学习者, 甚至技术开发人员等,都可以方便地加入到开源硬件的应用及开发中来。各类人员的加入,不仅丰富了开源硬件的功能,他们分享的创新方案、新作品给人们带来更多的创新和创意。这群具有共同爱好和兴趣的人聚集在一起交流思想和经验,分享彼此的创意和创新设计,慢慢发展形成一个开放、分享的平台开源社区。开源硬件在这种开放和分享的氛围中激发了人们的创新活力,同时自身也得到持续发

13、展(图 1-2)。3开源硬件(open source hardware)是指通过公开渠道,用户可获得硬件的设计文件,并对它们的设计进行学习、修改、发布和制作。它的本质是共享硬件的设计文件以方便他人进行修改或据其制作硬件,甚至包括用于商业用途。核心概念第一单元 开源硬件与信息技术创新技术的发展爱好者、技术人员等加入需求的增加原创的开源硬件向大众免费开放 硬件电路设计图 开发软件 开发文档 制作复制权限 开源社区参见 P10 知识链接“开源硬件及其发展”图 1-2 开源硬件与开源社区 理想情况下,开源硬件要公开并分享所有的设计文件,以最大化提高他人利用的效率。小贴士开 源 社 区(open sou

14、rce community)由一群具有共同爱好的人组成,在社区(线上或线下)中,人们可以获得他人的研究成果,同时也可以将自己的创意或研究成果等分享出来,供他人查看和使用。它是一个自由交流思想和创新成果的地方。小贴士开源硬件项目设计上网查找目前主流的开源协议 (open source license) ,了解它们的使用注意事项或约束。数字化学习开源精神主张贡献和分享,但这并不表示开源硬件可以被任意使用而不受知识产权的保护。各种开源协议在一定程度上保护了开源硬件原作者的知识产权,赋予原作者在其作品及派生作品的传播过程中拥有包括复制权、修改权和发行权等不同的权利。因此,在使用他人的开源硬件时,应遵循

15、原作者采用的许可要求,让后续的使用者知晓原作者和相关修改者,以及获得该硬件设计文件的途径等信息。通用公共授权(General Public License,简称 GPL)和知识共享(Creative Commons, 简称CC) 是人们熟悉的现有许可。 例如,Arduino 的硬件设计文件使用的是 CC 许可,软件则使用的是GPL 许可。目前较为典型、应用较为广泛的开源硬件有 Arduino 和Raspberry Pi(中文名称为树莓派)。由于 Arduino 的创造者们公开了 Arduino 的硬件设计图和软件程序代码,任何人都被允许生产电路板的复制品,还能重新设计,甚至销售原设计的复制品。

16、于是越来越多的人加入 Arduino 的改进工作中来,甚至一些大公司也发布了其他版本的 Arduino 产品。Arduino 发展至今,已经有了多种型号,每种型号都各有特点。图 1-3 简单列举了几种有代表性的 Arduino 型号。Serial 2005 年发布 最早应用 RS-232 串口的开发板Pro Mini 2008 年发布 体积较小,适合需要焊 接并永久安装的场合UNO 2010 年发布官 方 标 准 版, 用 户友好性最好、使 用最广泛Mega 2560 2010 年开发 有更多的内存和引 脚,提供更多的功 能和更好的性能参见P11知识链接 “开源硬件的开放与共享”图 1-3 几

17、种有代表性的 Arduino 型号41. 开源软件等同于免费软件吗?为什么?2. 开源硬件与开源软件有哪些不同??思考与讨论?Arduino 是一款便捷灵活的开源电子原型平台,包含硬件(各种型号的 Arduino 开 发 板) 和 软 件(Arduino IDE)。Arduino 开发板有多种型号,除应用最广泛的 UNO板,还有体积更小的 Nano、接口更多的 Mega 等型号。小贴士第一单元 开源硬件与信息技术创新上网搜索或到开源社区查找资料,总结归纳开源硬件的特征。数字化学习活 动1.1选择一种开源硬件开展调查,并回答问题:(1)允许任何人研究、修改、发布、制作和销售该硬件吗?(2)该硬件

18、提供可公开访问的设计文件吗?是免费的吗?(3)如果不是所有零件或文件都开放的话,能明确指出设计的哪些部分是作为开源硬件发布的,哪些部分不是作为开源硬件发布的吗?(4)未经许可能否使用原公司的商标?1.2 调查树莓派的各种型号及其发展关键事件,并制作其发展历程时间轴。2. 了解常见开源硬件的功能Arduino和树莓派等开源硬件的功能是完成信息的输入、处理及输出,适用于构建需要和物理环境交互的小型信息系统,它们是实现信息技术创新的重要途径。例如,某同学设计的“飞屋”,其控制系统就是以开源硬件 Arduino 为核心的信息系统。 “飞屋”制作、演示现场如图 1-4、图 1-5 所示。图 1-4 “飞

19、屋”制作现场图 1-5 “飞屋”升空参见 P11 知识链接“常见开源硬件的功能”5Arduino 在世界范围内得以广泛应用的原因是什么??思考与讨论?开源硬件项目设计指令接收与执行装置飞行指令发送装置 “飞屋”是某高中科技节上用于传送获奖名单的装置。利用开源硬件 Arduino UNO 板来控制它的飞行,使它可随着音乐节奏调节飞行的速度。如图 1-6 所示,整个“飞屋”信息系统由飞行指令发送装置、指令接收与执行装置这两个子系统组成,两个装置均由信息输入、信息处理、信息输出三个部分组成。无线模块在其中起到信息传输的作用,通过无线传输方式将两个装置(子系统)的输出和输入相连。飞行指令发送装置将操控

20、动作通过遥控杆转变为电压变化,经由发射端微控制器处理后输出到无线模块,再通过其发送出去。在指令接收与执行装置中,接收到的无线信号作为输入信息,经接收端微控制器处理,输出控制信息,控制执行装置的运行。通过以上分析可知,开源硬件 Arduino UNO 板在系统中起着接收控制信息、处理信息并输出信息来驱动执行装置的作用,它是整个信息系统的核心。图 1-6 “飞屋”信息系统6在设计和制作“飞屋”作品的过程中, 会遇到工程、技术、数学、科学和艺术等多方面的挑战。工程:飞行的最大距离能够达到多少?最长的滞空时间是多少?技术:用什么技术处理信息系统中的数据?数学:怎样通过算法来消除遥控杆输入数据时产生的噪

21、声?科学:气球灌装多少气体可以达到起飞拉力?气体为何会从气球中泄漏,如何防止或减缓泄漏?艺术:怎样设计“飞屋”的造型能使其既美观又不影响性能?小贴士第一单元 开源硬件与信息技术创新3. 探究开源硬件的价值现今,创新不再是少数人的专利,人人都可利用信息技术和身边容易获得的材料、开源硬件等来实现创新,开源硬件促进了发明者、制造商、学者和企业等的合作创新。利用开源硬件开展的信息技术创新项目和作品有很多,涉及的领域也很广泛,既有科学家和工程师为解决现实问题而制作的产品,也有普通中学生实现个人想法的作品,它们都体现了开发者的创新精神。这些创新作品大多分享在开源社区中,供他人查看或使用。作品一:开源无人机

22、活 动1.3在开源社区中查找某一开源作品或项目,查看其分享的设计文件,了解开源硬件在其中的功能,并参考“飞屋”案例,简单绘制它的信息系统组成草图。然后,在学校里建立一个分享社区(线上线下均可),供同学之间分享开源作品及相关知识和创意等。1.4 有人认为,开源软件和开源硬件是公开、免费的,不受知识产权保护,这种观点对吗?在班级里围绕“开源硬件是否受知识产权保护”展开讨论。图 1-7 开源无人机 产品创意:开源减灾制图飞机,如图 1-7 所示。 应用情境:当灾害发生时,需要快速绘制出灾情图,以便使援助物资快速、准确地送达受灾点和人群中。但一般灾害现场往往伴随有交通堵塞、通信中断等情况,无法借助常规

23、手段及时有效了解灾情。7尽管开源社区是一个开放共享的场所,但使用过程中须遵守相关的开源协议及网络安全要求,做信息社会的合格公民。小贴士开源硬件项目设计图 1-8 仿生手 价值:这是一款廉价、专门用来绘制灾害地图的开源无人机。它利用计算机视觉等技术识别地形和人,测量天气、烟雾及放射性数据, 并将测得的数据上传到开源制图平台中。它使用开源硬件,确保世界上任何人都可以使用或改进这款无人机及其搭载的各种传感器来收集数据,帮助减灾。 使用的开源硬件:使用开源飞行控制器 Ardupilot 来实现自动平飞、保持航向等功能;使用基于 Arduino 的传感器收集数据;使用树莓派处理收集到的数据。作品二:仿生

24、手 产品创意:使用 3D 打印机轻松制作低价、定制的仿生手,如图 1-8 所示。 应用情境:借助仿生手,一些截肢的残障人士可以抓取各种日常生活物品, 从而拥有一定的生活自理和工作能力。 价值:贫困家庭,尤其是成长过程中需要频繁更换仿生手的残疾儿童家庭迫切需要一款经济实用的仿生手。开发团队利用开源的 3D 打印机为截肢的残障人士提供低价、可自定义的仿生手。他们在网站上开放仿生手的设计图、电路图、代码甚至制作的教学视频等,供需要者免费获取并自行购买材料或利用 3D 打印机按照自己的尺寸制作。 使用的开源硬件:使用 Arduino 来控制仿生手,使用开源 3D 打印机制作手指、手掌等。8基于开源硬件

25、的项目横跨众多行业, 包括工业机械、农业、环境测绘、救灾、太空探索、生物技术、交通、教育、可持续性能源和机器人等。人们利用开源硬件进行创新时,都会将他们的创意和与创新作品相关的资料文件分享出来,自觉践行开源的理念和知识分享的精神。小贴士在创新者和爱好者的推动下,开源 3D 打印机近年来得以蓬勃发展,它们常被用来打印定制个性化的机器零件, 甚至进行小规模生产。小贴士第一单元 开源硬件与信息技术创新图 1-9 小车“巡逻兵” 产品创意:小车能避开障碍物行驶,间隔固定时间(开发者设定)拍摄照片,实现自动“巡逻”,如图 1-9 所示。 应用情境:某高中生外出旅游时,十分担心家里的安全,于是设计制作了一

26、个“巡逻兵”。他在一辆能够自动避障的小车上安装摄像头,让小车在家里自由行驶,每隔 10秒自动拍摄照片,并将照片上传到 Web 服务器,这样无论身处何处都可以通过手机了解家里实时情况。 价值:帮助实时监测家里的安全。 使用的开源硬件:使用 Arduino 控制小车的运行,使用树莓派控制摄像头拍摄照片并上传。 以上这些作品非专业人士也能实现,因为开源硬件降低了人们使用的门槛和项目作品开发的复杂度,在一定程度上突破了专业领域的围墙。人们可以根据自己的意愿设计制作具备一定功能的信息系统,甚至年龄很小的学生,即便不具备非常专业的知识,也可以成为设计者和开发者。基于开源硬件的作品的设计制作,亦可看作是充分

27、利用各种信息技术和其他学科的知识来进行创新的跨学科探究活动。作品三:小车“巡逻兵”活 动1.5在开源社区中查找一些有创意的项目作品,并在班级内分享。1.6用文字描述一个创意设想,然后用草图描述其主要功能。另外,请简单列举可能需要哪些材料、技术、知识、工具来实现这个创意设想。9Arduino 的计算速度不足以处理照片、视频等信息量大的数据,此外它无法连接 USB 摄像头,因此,制作开源无人机、 小车 “巡逻兵”时,还需要借助像树莓派这类数据处理能力更强大的开源硬件。小贴士生活中的各种智能设备,如智能灯、智能洗衣机等均内嵌了微控制器,打开配套资源,了解微控制器的广泛应用实例。数字化学习开源硬件项目

28、设计知识链接开源硬件及其发展1. 开源硬件开源硬件是可以通过公开渠道获得设计文件的硬件,任何人都可以对已有的设计进行学习、修改、发布、制作和销售。理想情况下,开源硬件使用随处可得的电子元件和材料、标准化制作过程、开放的基础架构、无限制的内容和开源设计工具,以最大化提高他人利用该开源硬件的效率。广义上说,开源硬件不仅限于电子硬件,还涵盖机床、车辆和医疗设备等更大范围的产品类别。从这个意义上说,硬件指的是任何形式的有形产品,可能是机械设备、纺织品,甚至建筑五金。开源硬件使得人们可以自由地分享技术,通过开放交互设计来共享知识和产品化硬件。越大程度地开放硬件的设计,包括设计使用的工具及工艺,就越能帮助

29、尽量多的人使用该硬件,例如制造、改进、销售,越能最大程度地体现该开源硬件的价值。2. 开源硬件的发展20 世纪 6070 年代,随着大规模集成电路技术的出现,业余无线电获得较大的发展,大批爱好者开始自己设计制作电台,并多以俱乐部或爱好者社区等方式来交流思想、分享知识。开源硬件概念的正式确立源自1997年, 一位无线电爱好者发起了 “开源硬件认证计划” ,其目的是允许硬件制造商自行认证他们的产品为开放的。该计划允许用户为设备更换操作系统,同时确保即使制造商倒闭,仍能有人为设备编写新的软件。这一时期产生了不少开源硬件项目,但由于生产成本过高,又无法通过规模生产来降低成本,因此发展一度深处困境之中,

30、大多数项目在一两年内就逐渐销声匿迹了。进入 21 世纪,互联网的兴起使得硬件设计的分享更加方便,人们可以快速或全球化采购工具和材料,加上开源软件的流行及一些企业利用开源软件取得的巨大商业成功、制造工具的成本逐渐降低等,再一次刺激了开源硬件的发展。这一时期比较著名的项目有Arduino、Beagle Board 等开源硬件开发平台项目,Maker Bot、Egg-Bot 等开源桌面 3D 打印机项目等。特别是 Arduino 等开源硬件开发平台的出现,使得电子爱好者 ( 创客 ) 们拥有了可以通过设计、开发实现创意的简单、便宜的平台工具。开源硬件项目蓬勃发展的同时,开源硬件组织也不断成熟,一些专

31、业协会组织不断出现,如 2012 年成立的开源硬件协会(Open Source Hardware Association,简称 OSHWA)。相关组织与研究者也在着手从事开源硬件规范制定的工作。现今,开源硬件思想已渗透至硬件设计的各个层面,很多开源硬件项目横跨不少行业,其中包括工业机械、农业、环境测绘、太空探索和机器人等,开源硬件作为产业已经走上成熟发展的道路。10第一单元 开源硬件与信息技术创新开源硬件的开放与共享开源硬件重视分享、透明以及工作的传承,开放与共享是其主要特征。人们可以使用和制造其他人的开源硬件,或者在项目中采用其他人的部分甚至全部硬件设计方案。商业化原因造就的技术壁垒使技术变

32、得越来越不透明,硬件的透明性就变得愈发重要,而开源硬件提供了一种物理形式上的信息自由。它意味着源文件可以很容易获得,从而得以复制和发展作品。源文件可能包括原理图、代码和装配指南等。正是因为开源硬件的开放与共享,人们有了更多机会去研究、使用并改进它们以开发更多的项目。利用开源硬件交流平台或社区,可以方便地将自己的反馈、疑惑、想法、改进建议等提交给发明者、有意改进或制造衍生品的其他人,这样可以非常迅速地进行创新。互联网的兴起使得快速采购原型所需的材料和工具、便利迅捷地设计和制造作品成为可能,推动了在线交流中心、在线知识中心的发展。借助互联网,偏远地区的人们也能快速地交流信息,如分发设计文件、实时答

33、疑解惑。随着全球各地越来越多开源设计文件被分享,在开源硬件社区中产生了大量人与人协作和参与硬件研发的机会,这将进一步推动开源硬件的创新和发展。每种开源硬件都会提供硬件规格、 编程语言参考指南、 软件下载、 基础实验案例等信息,帮助使用者配置开发环境和查阅软硬件功能说明。开源硬件社区中一般会有各种与开源硬件相关的讨论主题,如创意作品的来源、控制程序的注意事项等。当前比较热门的主题有机器人(广义的机器人,包括自主控制的车、飞机等)和家庭智能物联等。硬件相关资料的完整程度和用户在社区中的活跃程度,在一定程度上反映了开源硬件的易用性。常见开源硬件的功能常见的开源硬件有 Arduino 和树莓派,它们俗

34、称开发板。开发板大体上由微控制器、供电接口、USB 接口、数字或者模拟引脚等部分组成,它的主要功能是接收、处理、输出信息。其中微控制器(microcontroller)是开发板的核心部分,但其上的引脚较为细小,不易连接外部器件,给使用带来极大的不便,于是人们通过印制电路板将这些引脚拓展出来并加以标注,这也是它们俗称开发板的缘由。图 1-10 和图 1-11 分别展示了 UNO 板和树莓派主要的引脚和接口位置,其中 UNO 板是 Arduino 开发板众多型号中的典型代表。图 1-10 UNO 板图 1-11 树莓派USB 接口数字引脚供电接口微控制器模拟引脚数字引脚微控制器供电接口USB 接口

35、11开源硬件项目设计除了 Arduino、树莓派,常见的开发板还有 micro: bit(图 1-12)、ESP8266(图 1-13)等,它们各有特色,应用领域各不相同(详见配套资源)。 微控制器:进行运算并处理信息。 供电接口:用于给开发板供电。 USB 接口:用于连接计算机等设备。 数字引脚或者模拟引脚: 用于读取或输出信息。和个人计算机的 CPU 相比,Arduino 和树莓派的微控制器不仅含有计算单元,还集成了很多其他模块,如 A/D 转换器、内存等,因而又被称为芯片上的计算机。如果将开源硬件按信息处理能力的强弱来排列,就会发现,Arduino 代表了适合小数据量、单一任务的硬件,而

36、树莓派代表了适合大数据量、多种任务的硬件。例如,Arduino 程序的每次改动都需要上传到微控制器的内存并重新启动,而树莓派更接近于个人计算机,加载操作系统后可运行多个程序。它们分别采用了不同的技术规格和标准,表 1-1 给出了概要性的比较。图 1-12 micro: bit图 1-13 ESP8266Arduino树莓派本质开源硬件开发板开源硬件开发板操作系统无操作系统一般采用 Linux 作为操作系统开发工具Arduino IDE 开发环境,简化的 C+ 程序设计语言以 Python 开发为主,兼顾其他 Linux 下的开发环境应用领域一般用于传感器和执行装置的控制一般用于数据量较大的计算

37、表 1-1 Arduino 与树莓派的对比比较维度硬件12第一单元 开源硬件与信息技术创新开源硬件的公开文件开源硬件社区定义了开源硬件,明确硬件产品的哪些部分必须有公开文件,以符合其“开源”性质。设计一款开源硬件产品时,最好使用开源的设计工具和组件,及在本地可以找到的标准材料和标准流程,以最大限度地方便产品的购买、使用者的制造及改进。设计师所共享和记录工作的信息越多,就越有助于提高该产品的开放性,进而增大开源硬件社区采用该产品的可能性。对于一个结合了机械系统、电子元器件、硬件固件,并含有用户界面软件的复杂物理产品而言,该硬件的文件包含多个层次的信息。这种分层的开源原则是要确保开源设计的每一部分

38、都可被复制。表 1-2 介绍的是与开源硬件设备共同发布的信息文件各个层级的相关标准。拓展阅读有的项目可能不会包含上述所有层的信息。设计师还可以选择发布一些额外的设计文件来帮助用户制造、使用或修改硬件设备,这些文件包括手册、照片、图纸、书面说明、使用场景或其他可以帮助用户的解释类文件。摘自开源硬件 DIY创客实践指南表 1-2 开源硬件设备的设计文件开源硬件设计文件包含内容模型 / 图片类型推荐文件类型机械设计物料装配、所使用的材料、外壳2D/3D 模型.dxf,.dwg,.ai,.pdf,.3dr 等电子原理图和电路图电子线路图标、电路板的物理布局、电子元件列表2D 图片.pdf,.jpg,.

39、gif,.tiff物料清单详细的部件列表、 成本、 数量、数据一览表电子数据表格.pdf,.xls,.txt,.csv电路的物理布局图表印刷电路板的物理元件布局Gerber 文件Gerber 文件处理器的固件微处理器的固件源代码 (C、 Linux等)文本或二进制用户界面的源代码、API 和驱动图形用户界面的源代码、驱动、API,以及软件在计算机上运行的其他必备条件以任何编程语言写的源代码文本或二进制13项目学习目标本项目将尝试使用开源硬件 Arduino 设计制作一个交通信号灯,体验开源硬件项目设计的一般流程,体验利用开源硬件从提出想法到实现作品的完整过程。完成本项目学习,须回答以下问题:1

40、. 开源硬件项目设计的一般流程是什么?2. 如何利用 Arduino IDE 编写、调试程序并将程序写入开发板?3. 如何连接开发板、LED 来搭建一个简单电路?搭建时有哪些注意事项?项目二 设计制作交通信号灯了解开源硬件项目设计的一般流程图 1-14 项目设计的一般流程开源硬件和现代信息技术提供了丰富的资源和快捷的方式,降低了技术门槛和设计开发的复杂度,给予人们设计开发创意作品、将自己的创意变为现实的机会。在开源硬件项目设计活动过程中,人们可以洞察现实的世界,体验创造的乐趣;既是学习者,也是项目的策划者、规划师和工程师。虽然每个基于开源硬件的作品制作都有其独特的过程,但是利用开源硬件进行项目

41、设计的流程一般都要经历提出想法、设计系统解决方案、实现解决方案的完整过程(图 1-14),都要遵循设计、选材、组装、功能开发、测试、迭代优化等一系列步骤。在这一过程中, 需要的知识与技能可能涉及科学、 技术、 数学、 工程甚至艺术,它们往往不以系统性的面貌呈现,而是融入项目作品中,这就需要制作者根据项目的需要,自主去检索、学习、研究。项目学习指引1. 提出想法交通信号灯(图 1-15,简称交通灯)在生活中具有非常重要的作用,它全天候为出行提供秩序保障。如果由你负责设计与规划某交通灯,该如何实现它的自动控制呢?15当前交通灯正朝着自适应控制方向发展,即基于大数据分析得出的建议,结合路况的实时判断

42、,动态调整灯的亮灭时间,以最大效率利用道路资源。小贴士设置 1 秒时长是为了快速看到实验效果,缩短开发测试时间。小贴士图 1-15 交通灯图 1-16 某交通灯的工作流程绿灯亮 20 秒,熄灭时红灯亮起,持续 20 秒后熄灭,同时绿灯亮起,如此往复。在本项目中,我们将模拟以上交通灯的工作模式,设计制作一个交通灯作品,具体功能设想如下:通电后,红灯亮起,绿灯熄灭;1 秒后,绿灯亮起,红灯熄灭;1 秒后,绿灯熄灭,红灯亮起,如此往复。选择哪种灯来做交通灯合适?灯的亮灭规律是怎么样的?又该如何控制?这是设计和规划交通灯必须要考虑的事情。目前交通灯的控制基本采用的是定时控制,即控制红灯和绿灯的亮灭时间

43、。某路口有4组交通灯, 每组有红、 绿两灯。 以一组灯为例,它的工作流程如图 1-16 所示。第一单元 开源硬件与信息技术创新参见 P22 知识链接“开源硬件项目设计的一般流程”开源硬件项目设计活 动2.1选择家附近或者学校附近的某一个路口,观察并记录该路口交通灯的种类及灯的亮灭情况,包括灯的亮灭时间和先后顺序等。尝试提出含三个灯(红、黄、绿)的交通灯设想。2. 设计系统解决方案(1)初步设计根据设想,可以用两个发光器件(能分别发出红色和绿色的光)来模拟红、绿信号灯,在同一时刻呈现不一样的亮灭状态,用于体现交通灯一红一绿交替亮灭的效果。交通灯初步设计图如图 1-17 所示。(2)选择器件 选择

44、开发板如何控制红、绿两灯按照指定的周期亮灭?这需要选择合适的开发板来完成自动控制。树莓派和 Arduino UNO 板可以实现同样的控制效果,但各有特色。树莓派安装了 Linux 操作系统,可运行 Python、C+ 等高级语言,适合较大量的数据处理,其外接引脚电压为 3.3V。Arduino UNO 板(简称 UNO 板)使用简单,易于操作且价格低廉,引脚电压为 5V 且带电流保护。本项目选用 UNO 板作为作品的开发板,用于处理信息。 选择发光器件发光器件有很多,如日光灯、白炽灯、发光二极管(Light Emitting Diode,简称 LED)等。现实生活中,由于交通灯都设在户外,需要

45、承受季节的更替、风雨雷电、频繁的亮灭、气温的剧烈变化等,目前大都使用亮度高、寿命长、稳定性强且不易损坏的 LED。图 1-17 交通灯初步设计图微控制器是开发板处理信息的核心部件。小贴士开发板上布满电路, 使用时手不要直接触摸它的中间部位,应用手指拿住它的边缘。小贴士16第一单元 开源硬件与信息技术创新本项目考虑的是模拟交通灯亮灭效果,不需要高亮度和大电流的器件,故选用 LED 即可。 选择其他辅助器件根据电路搭建的需要,还必须选择一些常用的电子零件、工具和导线,如色环电阻、面包板、跳线等。(3)可行性验证实验根据设计方案,需要进行可行性验证实验:用开发板自动控制一个 LED 的亮灭。 用开发

46、板自动控制一个 LED 的亮灭LED 的亮灭是由其两端的电压差决定的。用开发板来控制 LED 的亮灭,就是通过开发板控制 LED 两端电平的高低状态,使之每隔 1 秒亮灭一次。实验步骤: 如果是首次在计算机上使用 Arduino,那么要先安 装 Arduino 的 集 成 开 发 环 境(Integrated Development Environment,简称 IDE)。 使用 USB 线连接计算机和 UNO 板,并在 IDE 里设置COM 端口。 根 据 图1-19 连接器件。先将 LED 引脚串联分压电阻,然后正极插到 8 号引脚,负极插到GND 引脚。 在 Arduino IDE中编写

47、程序,控制LED的亮灭。Arduino 程 序框架分为两个部图 1-18 LED 实物图当给 LED 加上一定的电压时,它会发光。LED 有两个引脚,接入电路时,通常长引脚与电源的正极相连,短引脚与电源的负极相连,中间加限流电阻,防止LED 过流烧坏。LED 实物如图 1-18 所示。小贴士可行性验证实验是为了了解所选器件的使用方法及预想的实验结果能否实现。小贴士计算机与 Arduino 开发板通过COM端口进行通信,首次使用,需要手动配置。GND 是 Ground 的简称,表示接地端或负极。小贴士图 1-19 一个 LED 的控制电路图选择器件时一般需要考虑哪些方面?有哪些注意事项??思考与

48、讨论?参见 P23 知识链接“开源硬件的集成开发环境”参见 P25 知识链接“面包板的使用”17开源硬件项目设计分,setup() 用于初始化工作,loop() 是程序的主体部分。将 8号引脚的电平设为高(5V),灯点亮,保持 1 秒后再设为低(0V),灯熄灭,也保持 1 秒。程序循环执行 loop(),就出现 LED 交替亮灭的效果。程序示意图如图 1-20 所示。Arduino 程序采用的编程语言是简化的 C+。小贴士图 1-20 控制一个 LED 亮灭的程序示意图参 见 P24 知 识 链 接“Arduino 程序的基本结构”/ 通电后 setup() 执行一次,然后反复执行 loop(

49、)void setup()pinMode(8,OUTPUT); / 将 8 号引脚设为输出/loop() 中的代码会循环执行,直到断电void loop()digitalWrite(8,HIGH); / 将 8 号引脚电平设置为高,灯亮起delay(1000); / 等待 1000 毫秒(1 秒),灯持续亮 1 秒digitalWrite(8,LOW); / 将 8 号引脚电平设置为低,灯熄灭delay(1000); / 等待 1000 毫秒(1 秒),灯熄灭持续 1 秒在 Arduino 的配套软件平台中,有一些系统默认的常量。常见的如表 1-3 所示。表 1-3 常见的常量常量名称说明IN

50、PUT代表输入OUTPUT代表输出HIGH代表高电平,相当于 5VLOW代表低电平,相当于 0VTrue代表真或 1False代表假或 0小贴士 点击工具栏的“上传”按钮,IDE 先对编写的程序进行编译验证,验证语法无误后,将程序上传至 UNO 板。Arduino 参考程序:在 Arduino 编程中,只需要编写 setup() 和 loop() 两个函数,这两个函数均无返回值,分别用于 Arduino 程序的初始化部分和执行部分。setup() 函数一般放在程序开头,用于设置一些引脚的输入 / 输出模式、初始化串口等,它只在通电或重启时执行一次;loop() 函数用于执行程序,是一个永久循环


注意事项

本文(沪科教版普通高中教科书·信息技术选择性必修6 开源硬件项目设计.pdf)为本站会员(九年教育)主动上传,文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文库网(点击联系客服),我们立即给予删除!




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

文库网用户QQ群:731843829  微博官方号:文库网官方   知乎号:文库网

Copyright© 2025 文库网 wenkunet.com 网站版权所有世界地图

经营许可证编号:粤ICP备2021046453号   营业执照商标

1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png