https://itp.nyu.edu/physcomp/syllabus/

教学大纲

介绍 物理计算是一种学习人类如何通过计算机进行交流的方法,首先要考虑人类如何在物理上表达自己。在本课程中,我们将人体视为一个给定的对象,并尝试在其表达的范围内设计计算应用程序。 为了实现这一目标,你将学习计算机如何将我们身体发出的能量变化(以声音、光、运动和其他形式)转化为它可以读取和解释的变化的电子信号。您将了解执行此操作的传感器,以及称为微控制器的简单计算机,这些计算机读取传感器并将其输出转换为数据。最后,您将学习微控制器如何与其他计算机通信。 要了解这一点,您需要观察人员并构建设备。你将花费大量的时间构建电路、焊接、编写程序、构建容纳传感器和控制装置的结构,并找出如何最好地将所有这些东西与人的身体联系起来。 安全要求:如果您计划在第1-3周内使用实验室,请在参加工具安全会议!即使你是一个经验丰富的制造商,只要你计划使用这个实验室,都需要了解安全守则。

课程结构

  • 45 – 60 讨论纪要, 作业中遇到的问题,项目的陈述和讨论,阅读材料的讨论和其他问题。
  • 休息10分钟
  • 60 – 90 分钟 新材料介绍。你的导师将介绍本周的材料并演示本周的实验。如果你觉得有帮助的话,可以带上你自己的组件和指导老师一起构建。课程的这一部分也是非常互动的,所以要提前复习课堂笔记。当你有问题或想澄清课堂上讨论或展示的任何东西时,请大声说出来。
  • 个别的教师可以根据每个班级的需要修改这个结构。

    课程期望

    这门课的作业包括整个学期每周的实验作业;阅读、讨论和课堂参与;以及三个项目任务,你将在其中构建交互式设备。

    实验室任务

    这学期大部分时间都有实验作业。这些练习将帮助你学习本课程的技术资料。每周你都应该复习本周的主题笔记或视频,然后做实验,写下你的进步、失败和问题。大多数周的上课时间都是从你的问题和实验室的进展开始的。
    不管创意有多垃圾,一定做完。如果中途有更好的灵感,记下来,等目前的方案完毕了,再从头做,不要中途打补丁。如此做到第三个第四个版本,基本上会非常好。如果中途一有想法就改,那么半天做不完一个完整的方案,实际结果往往很差。

    专项任务

    这堂课你要完成三个专题作业。这些简介在作业页上。实验室里的材料将提供你所需要的技巧,课堂讨论将帮助你想出每一个的想法。其中一些是小组作业。你将在第5周、第10周和第14周在课堂上展示你的项目作业。你也将在你的博客上记录你的项目。
    以下是对项目分配的几点建议。根据他们需要的技能,以及他们最适合的项目,对他们进行标记。

    Project 1

    改专项练习应该展示下列技术技能:

  • 数字和模拟输入digital or analog input

  • pwm和音调频率输出PWM or tone output
  • 如果想要控制一些结构动作也可以选择伺服电机控制

    专项练习1的一些建议:

    密码组合锁

    组合锁在用户执行一系列特定的操作之后做出响应,比如按一系列的按钮,或者按一系列的预定位置转动旋钮。例如,想想典型的酒店房间保险箱。当它打开时,你关上门,输入密码,按回车键,然后安全锁。当您再次输入密码时,保险箱将解锁。关闭车门并输入新代码将重置锁。在某些保险箱上,只需再次按enter键即可使用相同的代码。 最简单的组合锁通常使用四个或五个按钮的序列。要使其工作,您必须检测按钮何时从按下状态更改为释放状态,反之亦然。 你的组合锁不需要打开锁。它可以在序列成功输入时打开一盏灯,或者在扬声器上播放一首曲子。但是,应该可以在完成任务后重置设备,如上面的示例所示。你的设备也不必只使用按钮。你可以使用任何你知道如何感知的物理动作序列来激活你的锁。

    电子乐器 (Tone)

    做一件简单的乐器。你的乐器应该能够控制音高和开始和停止一个音高。它不必一次控制多个音高。
    在设计乐器时考虑以下问题:

  • 你想弹离散音符(如钢琴)还是滑音(如钢琴)?

  • 你如何编程来达到这些效果?
  • 你想控制音符的节奏和持续时间吗?
  • 你想用同样的物理动作来设置音符的音高和速度(音量)吗?
  • 你想一次演奏多个音符吗(例如和弦)?

所有这些问题,还有更多的问题,都会影响你使用什么传感器,你如何读取它们,以及你如何设计物理接口和软件。


Project 2

项目2将在项目1的基础上进行进阶设计,应该能够展示以下技能:

  • 基于下面知识的微控制器和计算机的通信:
    • 异步串口通信Asynchronous Serial communication
    • 使用键盘鼠标等USB人机交互设备进行控制USB Human Interface Device (HID) control using Keyboard or Mouse libraries
    • (高阶)蓝牙无线通信Bluetooth LE communication (advanced)
    • (高阶)midi音乐控制接口MIDI (advanced)
    • (可选)同步串口通信Synchronous Serial communication (I2C or SPI) (optional)

      项目2的一些参考建议:

      多媒体控制器 (串口)
      制作音乐或视频播放控制器。控制器应该能够启动、停止和暂停媒体文件的播放、快进、快退和控制音量。 您可以在p5.js中创建此控制器和媒体播放器,并使用异步串行通信进行控制,也可以使用键盘和鼠标控件进行控制。 这是一个很好的项目,以适应异步串行通信。
      游戏控制器 (串口)
      制作游戏控制器。最简单的控制器只有很少的控件。考虑WASD控制器,例如,键W、A、D控制屏幕上的二维运动。或操纵杆控制器,其中2轴操纵杆和按钮支持屏幕上的所有操作。一个好的控制器的乐趣在于你可以用有限的控制来执行复杂的行为。 用p5.je做游戏。或使用现有的游戏,如Pong.
      你的交互控制方式应该尽量友好,使体验者可以看屏幕,而不是把精力放在控制方式上。

Project 3项目3

项目3将在项目1项目2的基础上完成,并且包括以下知识技能展示:

  • 选择下列方式实现微控制器和计算机通信:
  • 物理交互设计原则:
    • 参与者是否可以通过最少的指导理解界面?他们知道通过看、听或触摸做那些交互?
    • 除了你别人能用吗?
    • 如果没有人为干预是否可以开始停止和重启。
    • 注意交互产品的灵活运用,也就交互装置参与者可以随意动作而不仅仅是一个单一动作,
  • 构造原则
    • 制作一个外观结构而不只是裸漏的电路。

你可以为此项目改进以前的某个项目,也可以启动一个新项目。不过,不要让项目的范围比前两个项目大,因为如果项目太大或太复杂,你就没有时间完成它。

关于项目三的一些建议参考:

项目1或项目2中的任何一个建议对于项目3来说都是好主意,下面是一些其他的想法。

游戏控制器 (USB HID)

制作游戏控制器。最简单的控制器只有很少的控件。考虑WASD控制器,例如,键W、A、D控制屏幕上的二维运动。或操纵杆控制器,其中2轴操纵杆和按钮支持屏幕上的所有操作。一个好的控制器的乐趣在于你可以用有限的控制来执行复杂的行为。 你不必去做这场比赛。您可以使用任何可以由鼠标或键盘控制的现有游戏,因为您的微控制器(nano33 IoT)可以编程为以鼠标或键盘的形式操作。考虑基于浏览器的游戏,比如 Lunar Lander. 这里有一个不同版本的 different version of Lunar Lander. 考虑一下controlling Zoom.
你的控制应该是灵活的,使体验者可以把精力放在屏幕上,而不是集中在控制方式。
这个项目很可能依赖于使用键盘或鼠标库的usb hid通信。可以看一看USB HID labs 找些灵感。

Musical Instrument (MIDI)

做一件midi乐器。你的乐器应该能够控制音高和音量,以及开始和停止一个音高。它还应该能够演奏和弦;也就是说,同时演奏多个音符。 这个项目需要对音乐和MIDI有一些了解。看看MIDI实验室的方法。

传感器数据记录器和可视化工具 (SPI, I2C SD Card)

用传感器捕捉一段时间的推移,并创建一个可视化或超声波,表示随着时间的变化。 有许多变化太慢了,我们没有足够的耐心去观察,但当我们看到它们的模式在一段时间内被回放时,这些变化给了我们很好的洞察力。例如,空间中光线变化的图表可以告诉我们季节变化或人类活动。温度的变化可以告诉我们一个地方在一天的不同时间有多拥挤。空气质量传感器的读数随着时间的推移可以给我们一个图片,当生产活动发生在一个商店。运动传感器随时间的变化可以向我们展示一天中一个空间的交通模式。 选择一个可以测量环境变化的传感器,编写一个程序,在设定的时间间隔内读取并记录读数。然后找到一种呈现读数的方法,以显示随时间变化的模式。这可能像电子表格生成的随时间变化的图表一样简单,也可能是一个声音程序,它可以将这些变化转换为音调,并随着时间的推移以音乐的方式播放这些变化。选择一种表示数据的方法,让查看者能够读取和理解他们无法实时看到的更改。
你可以通过以下方式获取需要的数据:

  • 在几个小时内将传感器数据从Arduino发送到您的笔记本电脑,并将笔记本电脑单独放置(为了安全)。
  • 随着时间的推移,将传感器数据作为USB键盘输入笔记本电脑并保存到文件中(command-S也是一种键盘输入)
  • 从Arduino将数据记录到SD卡上的文件中,然后在p5.js中读取该数据

本项目是一个很好的将异步串行通信与p5.js中的数据可视化相结合的项目。或者,它也可以是一个很好的方法来学习如何从Arduino和p5.js中的文件进行读写。

手势控制 (Bluetooth LE)

做一个可以通过手势控制的控制器. 比如:

  • 一种媒体控制设备,可以对你的手左右滑动做出反应
  • 一种游戏控制器,对你手臂的剑术动作做出反应
  • 对特定的手信号作出反应的音乐控制器

控制器应该能够重复可靠地启动和停止特定的输出。例如,如果您正在制作上面提到的媒体控制器,它应该能够以不同的手势播放、暂停、快进、快退和停止。 因为你使用的是大的身体姿势,所以这个项目最有可能是使用蓝牙无线通信 Bluetooth LE communication 去控制电脑.
这是媒体控制器或乐器项目的更高级版本,因为它要求您读取传感器数据,了解该数据变化的模式,并编写程序在检测到这些模式时发送控制消息。
文档记录
把你在课堂上的进步记录在一个普通的博客里。 至少,你应该总结一下你在这方面的见解 每周的实验室作业,并详细记录你的生产项目和技术研究。在Journals&documentation页面上,您可以找到好的文档指南和几个示例。
阅读https://itp.nyu.edu/physcomp/resources/books/
每周要讨论的主题笔记都会链接到该周的课堂页面上。 有一些视频演示了 还有实验室。这些视频所涵盖的内容与书面笔记相同,因此你可以从任何你认为最有用的形式中学习。阅读每周的材料 上课前,做实验,准备问题。
你还将被分配一些简短的阅读资料,以产生关于物理交互设计、应用思想和其他主题的讨论。这些提供了背景和背景灵感。这些没有具体的作业,但它们可能会在课堂讨论中作为参考。 在图书页上可以找到一个较长的技术和概念源材料列表。
作品互相评价
通过对同学工作的反馈来支持他们是课堂的一个重要组成部分,也是你参与成绩的一个重要组成部分。当你的同学在课堂上展示他们的作品时,我们会留出一些时间进行口头评论,但你也应该对他们的展示做书面笔记。就他们做得好和应该继续做什么,他们应该停止做什么,以及他们可以为他们的工作和/或他们的陈述增加什么以使其更好地提出建议。下课后与同学分享笔记。你将从你的同学那里得到同样的笔记,所以用同样的声音写下你想听到的关于你自己工作的反馈。
课表下面是这学期每周的时间表。每周链接的课堂页面详细说明了本周要讨论的主题和下周的作业。

Class & Dates Topic list (F2020) Assignment Due 作业检查(F2020) Post-Class Work
1
2-Sep
3-Sep
4-Sep
Intros介绍
What is physical interaction
什么是物理交互
Documenting:
课堂记录
Descriptions文字描述
pics图片
* videos视频
Shop for parts购买元件
Set up a blog and send link to instructor
Electronics Labs
创建博客并选定一位电子实验室导师
Quiz 1测验1
Readings阅读
2
16-Sep
10-Sep
11-Sep
Electrical basics:
电子电路基础
voltage电压, current电流, resistance电阻
Documenting:课堂记录
System diagrams 系统关系图(block diagrams of components in the system系统中的组件框图)
Circuit Drawings 电路图(Fritzing or other)
* Schematics (Fritzing or other)电路设计软件
Electronics Labs
Questions from Quiz 1
Do Digital I/O + Analog Input labs进行数字io口模拟输入实验
Do Quiz 2
Readings
3

23-Sep
17-Sep
18-Sep | Microcontroller,微控制器
Digital & Analog In数字和模拟输入 | Microcontroller I/O labs微控制器实验室
Questions from Quiz 2 | Do Analog Out Labs进行模拟输出实验
Do Quiz 3
Blog Project 1 idea博客记录项目1想法
Make play test plan制定运行测试计划
Build cardboard prototype 用硬纸板制作原型
Readings | | 4
30-Sep
24-Sep
25-Sep | Analog Out:模拟输出
* PWM,
Tone | Microcontroller Analog Out Labs微控制器实验
Questions from Quiz 3
Project 1 idea | Build Project 1 device列项目所需设备
Blog project process博客记录进度
Readings | | 5
7-Oct
1-Oct
2-Oct | Show assignment 1
作业展示 | Project 1: physical I/O device due输入输出设备汇报 | Blog remaining Project 1 documentation博客整理剩余任务
Review labs so far之前任务实验复习
Readings | | 6
14-Oct
8-Oct
9-Oct | Catch-up and Datasheets作品完善和阅读数据手册

| Documentation from Project 1 | Do Serial 1 labs
1号串口实验

| | 7
21-Oct
15-Oct
16-Oct | Asynchronous serial异步串口 | Questions from first serial labs | Do Serial 2 labs
2号串口实验
Blog Project 2 idea博客记录项目二想法
Readings | | 8
28-Oct
22-Oct
23-Oct | Async serial 2: protocols异步串口协议 | Do second serial labs
Project 2 idea | Do I2C/SPI labs
I2C/SPI串口实验
Readings | | 9
4-Nov
29-Oct
30-Oct | Synchronous serial同步串口实验 | Questions from I2C/SPI labs | Build Project 2 device列项目2设备清单
Blog project process博客记录项目进度 | | 10
11-Nov
5-Nov
6-Nov | Show assignment 2作业展示 | Project 2: media device due | Blog remaining Project 博客记录剩余内容2 documentation

| | 11

18-Nov
12-Nov
13-Nov | Electrical basics:
电学基础current & energy
Motors & Movement耗能器和执行器 | | Blog Project 3 idea
Review Labs for Project 3 techniques | | 12
25-Nov
19-Nov
20-Nov | User testing用户体验测试 | Project 3 idea | Make and blog playtest plan
Build and test cardboard prototype | | 13
2-Dec
3-Dec
4-Dec | More User Testing更多的用户体验 | | Build Project 3 device
Blog project process | | 14
9-Dec
10-Dec
11-Dec | Show final最终展示 | Assignment 3: Final device due | Blog remaining Project 23documentation |

课堂上使用的零件和材料
在这门课上你将要做很多项目,包括电子和机械设备。你所有的项目都将是你想象的互动的草稿。电子练习 将演示 与Arduino微控制器和各种传感器和执行器。你需要什么零件的细节可以在零件和工具指南页上找到。 ITP商店和设备室为你准备了“购买前先试用”的零件,你可以在那里了解传感器或零件,看看它是否能满足你的需要。请不要囤积商店里的零件,这样别人也可以使用。只为某个项目或实验室拿你需要的东西。
班级政策
评分等级
你能做的最重要的事就是 准时到达每节课,准备好积极参与,提出问题,讲述你在实验室遇到的挫折或成功的故事,以及你发现的与pcomp相关的有趣的材料和事件。每周,你应该投入足够的时间来消化,然后应用这些材料。如果可能的话,和你的同龄人一起工作,无论是面对面还是在线。有机会接触到处理相同主题的人、二年级学生、住院医生和全职教师是很有用的。我们每周在一起的时间,以及你们彼此的接触,是在ITP学习物理计算与仅仅阅读互联网的区别。

  • 30% 实验室工作和课堂参与
  • 50% 项目任务
  • 20% 博客和文档

参与和出席
2020年秋季的班级会议将在预定的上课时间通过电话会议进行。如果条件允许,教员将自行安排在杰街370号的ITP会议室进行课外活动,如办公时间、项目审查或任何认为安全和适当的活动。亲自参加会议将是完全可选的,只有当你感到舒适和安全的时候才这样做。
当我们在一起的课堂上或在网上时,我们能做的最有价值的事情就是讨论和实践你正在学习的主题。准时出现,参与课堂讨论,按时交作业,通过建议和批评向同学提供支持,是你在这堂课上成功的重要部分。
虽然网上有大量的课堂资料,但只要有可能,你就应该参加课堂会议。这个班是一个研讨会,不是讲座。它在很大程度上依赖于小组讨论和课堂上的参与。只要您的物理环境和互联网带宽允许,我们希望您能准时参加在线课堂会议并积极参与,您的相机打开,这样我们就可以看到和互动。如果你带着对同学的尊重和体谅加入到对话中来,并且在课堂上口头或聊天中提出问题,那么课堂就会变得最好。Edutopia有一套手势,在课堂上也很有用,课堂上也可以采用。如果您不能以这种方式参加班会,请提前通知您的导师,以便我们进行相应的计划。我们会尽我们所能容纳学生,但我们需要提前知道,以便这样做。
如果你要迟到或缺席,请提前给你的指导老师发邮件。如果您有紧急情况,请尽快通知您的指导老师。
个人设备使用
课堂的质量在很大程度上取决于你的注意力和积极参与的质量。由于课程将通过Zoom进行,您一定会打开您的计算机。请使用您的电脑参与课堂和课堂材料,不要查看电子邮件、社交媒体和课外活动。这在学生陈述、反馈和课堂讨论中尤为重要。请关闭您未积极使用以连接到类的任何设备,并关闭可能中断讨论的通知。如果你有紧急情况,可能需要你在上课时离开,请提前告诉你的老师。
ITP行为准则
与ITP和IMA的所有活动一样,我们将遵循ITP/IMA行为准则。请把它当作你在课堂上可能做或看到的项目的指导,以及我们在课堂上如何相互尊重。
学术诚信声明
剽窃是把别人的作品当作自己的作品来呈现。更具体地说,剽窃是以你自己的方式呈现:引用另一位作家的一系列文字或编程代码或图像,而不加引号,或引用另一位作家的作品或其他人撰写的事实、想法或图像的转述段落。
原则声明
Tisch艺术学院的教育经验的核心是由学生创作原创学术和艺术作品,供教员进行批判性审查。因此,最重要的是,学生在任何时候都要让他们的导师准确地了解他们目前的能力和知识,以便接受适当的建设性批评和建议。任何企图通过剽窃或作弊来逃避教师和学生之间的必要的、透明的交易的行为都是教育上的自我挫败,严重违反了蒂希艺术学院的社区标准。有关剽窃的详细信息,请参阅蒂希艺术学院政策和程序手册第10页。
无障碍声明
请随时向您的指导老师提出建议,让您更容易接触本课程。学校为残疾学生提供住宿。详情请致电110与摩西残疾学生中心联系。
咨询与健康声明
你的健康和安全是纽约大学的头等大事。如果您在本课程期间遇到任何健康或心理健康问题,我们鼓励您利用纽约大学24/7健康交流中心212-443-9999的支持服务。此外,所有因身体或精神残疾需要学术住宿的学生,请向摩西中心212-998-4980注册。如果您需要连接这些资源的帮助,请告知您的导师。

image.png