编程理论

2024-09-19

编程理论(共7篇)

编程理论 篇1

PLC的工作原理是建立在计算机工作原理基础上, 通过执行反映控制要求的用户程序来实现的。PLC的工作过程是一个不断循环扫描的过程。CPU从第一条指令开始, 按顺序逐条地执行用户程序直到用户程序结束, 然后返回第一条指令开始新的一轮扫描。据此, 结合多年的教学经验对PLC编程中的一些常见问题进行如下分析。

1 电动机的启动、停止、点动控制程序

在实际应用中, 有些设备的运动部件的位置常常需要进行调整。这样, 在电动机的控制中, 除了必要的启动, 停止按钮外, 还需要有点动按钮, 使其具有点动调整的功能。根据要求, 我们很容易考虑如下编程 (在自锁Q0.1上串联一常闭触点I0.2, 是为了在点动时破坏自锁) 。地址分配表如表1所示, 梯形图如图1所示。

通过实验, 图1的程序是不能满足我们的要求的。工作情况是这样的:在按启动按钮I0.1时, 可实现电动机的正常启动, 再按停止按钮也可使电动机正常停止;但是, 按点动按钮I0.2时, 看到的是电动机的长动, 而不是我们要求的点动。这是为什么呢?因为PLC梯形图中“软继电器”的常开触点和常闭触点的状态转换是同时发生的。因此, 在按下点动按钮I0.2时, I0.2的常开触点闭合, I0.2常闭触点断开, 输出线圈Q0.1得电, 电动机运转, Q0.1的常开触点闭合。当松开点动按钮I0.2时, I0.2的常闭触点立刻闭合, 输出线圈Q0.1还没来得及停止, 就又被接通。所以, 电动机点动功能实现不了。为此, 必须做到Q0.1先断, 其自锁回路后合才行。于是对程序作如图2改动即可, 该程序中运用了PLC的周期循环扫描工作方式而造成的输入、输出延迟响应来达到先断后合的效果的。 (注意:网络1和网络2的位置不能交换, 否则, 点动功能仍然不能实现。)

2 计数器的使用

计数器是对外部的或由程序产生的计数脉冲进行计数。计数器是累计其计数输入端的计数脉冲由低到高 (由OFF到ON) 的次数。S7-200 PLC有三种类型的计数器:增计数器、减计数器、增/减计数器。不论用哪种类型的计数器, 都要考虑是否能实现实际工作任务。比如有这样一个任务:用增计数器指令编制控制3盏指示灯亮灭的PLC程序, 要求:每按1次按钮, 点亮一盏指示灯并保持, 按下3次3盏灯逐个点亮, 全亮后同时熄灭。根据这个任务很容易想到图3 (a) 的编程方法, 从道理上说, 这个程序完全可以实现该任务。但事实上, 这个程序中的前两盏灯可以按要求实现功能, 而第三盏灯是不会亮的。这是因为程序中的计数器C11、C12、C13的复位端是由C13来触发的, 当C13当前值达到设定值时, 三个计数器立即同时复位, 而三盏灯亮的条件是相应计数器置位。因此, 三个计数器复位时, 三盏灯立即熄灭。这样, 第三盏灯还没来得及亮就灭了。要完整实现功能, 可以设计成图3 (b) 所示的程序。在程序中加一个定时器, 定时1秒后自动熄灭, 很好地实现了题目要求

3 移位寄存器DATA端的使用

DATA端为数据输入端, 移位时将该位的数值移入移位寄存器。但在实际编程时, 可以用DATA端输入数据, 也可不用DATA端输入数据, 下面举例说明其具体应用。

3.1 用DATA端输入数据

用移位寄存器指令编写由六盏灯组成的流水灯控制程序。要求按下启动按钮后, 6盏灯逐个点亮并保持, 全亮后再依次熄灭, 并如此循环工作, 亮和灭的间隔时间均为1s;当按下停止按钮时, 即停止工作。

3.2 不用DATA端输入数据

同样是以上例题, 可以在DATA端输入一个不相关的数据, 而在S_BIT端直接输入一数据, 这时, DATA端的数据是没有用的, 效果是一样的。程序如图5所示

参考文献

[1]《可编程控制器原理及应用》吴中俊黄永红主编, 机械工业出版社, 2008年6月第2版;

[2]《PLC编程与应用》张艳主编, 江苏教育出版社, 2010年9月第1版。

编程理论 篇2

关键词:编程;辅助编程;即时风格块

中图分类号:TM571.6

对于即时风格块辅助编程来说,在一般人的眼中,是一种非常专业的东西。简单来说,所谓的即时风格块辅助编程只是计算机编程中的一个重要组成部分,在近几年的研究中,得到了大幅度的开发,其功能得到了较大的进步,对人们的生活和工作产生了较大的积极影响。鉴于这样的情况,科研人员需要对计算机编程中即时风格块辅助编程进行一定的深化,将其中的隐患和一些问题进行排查和清除,这样才能有效的保证即时风格块辅助编程更好的服务于用户。我国在这方面已经有所成就,本文就计算机编程中即时风格块辅助编程的运用方法进行一定的思考。

1 即时风格块辅助编程的运用现状

1.1 范围有限

对于即时风格块辅助编程来说,在现阶段的运用中,运用范围有限是一个主要的问题,主要原因在于,我国虽然在即时风格块辅助编程方面已经有了一定的成就,但仅限于科研人员选定的范围,对于绝大部分的用户来说,在即时风格块辅助编程方面,有的只是一些概念性的定义,或者道听途说,而体验过的用户对于即时风格块辅助编程的了解也不是特别的多,科研人员只是需要一些数据而已,综合起来,无论是没有体验过的用户,还是已经体验过的用户,对于即时风格块辅助编程来说,只是有一个模棱两可的感觉,运用即时风格块辅助编程的范围是有限的。

1.2 问题较多

在即时风格块辅助编程中,虽然对广大的用户产生了很大的积极影响,但存在的问题也较多,比方说与现有的一些系统不兼容,与一些程序发生冲突等等,这都对用户产生了一定的消极影响。现阶段的社会发展较快,即时风格块辅助编程需要得到一定的突破,对于上述问题来说,是必须解决的,值得注意的是,有些科研机构在解决的时候,采取的是暂时性的措施,这种方法有好处,也有坏处。好处是可以为用户暂时提供一定的良好服务,为科研人员争取一定的研究时间;坏处是在将来的时间内,一旦科研人员没有研究出良好的解决办法,将会使得问题的严重程度增加。因此,在即时风格块辅助编程的运用现状中,问题比较多,而且难以解决,用户对即时风格块辅助编程产生了一定的质疑,广大的用户需要的是全面服务,而不是为了一个即时风格块辅助编程舍弃其他的程序应用。

1.3 步骤繁杂

在计算机编程中,任何一个环节都比较复杂,这是一个公认的事实。但在即时风格块辅助编程中,步骤不是一般的繁杂,经过一定的调研,广大的用户反馈的是,在应用即时风格块辅助编程后,很多的应用都出现了迟缓的现象,而且在工作和生活中,计算机也受到了一定的消极影响,这也跟具体的职业和人群有一定的关系,但归根结底是即时风格块辅助编程步骤繁杂的原因。为了能够更好的服务于用户,促进即时风格块辅助编程的发展,必须良好的解决这一问题,改变这一现状,只有这样才能提高计算机编程的整体性能,从而对用户的生活和工作产生积极影响。

2 计算机编程中即时风格块辅助编程的运用方法

2.1 扩大范围

对于计算机编程而言,随着应用人群的日益增多,对其产生了一定的积极影响,鉴于这样的情况,也需要扩大即时风格块辅助编程的应用范围,但并不是单纯的扩大,要注意划分职业和人群的类别。在职业方面,有白领级别、老板级别;在人群方面,有老人、年轻人、中年人,按照这样的划分进行扩大范围,同时及时的进行调研,将反馈意见和建议及时的送到科研人员的手中,这样就可以将即时风格块辅助编程中的一些问题及时的解决。主要原因在于,科研人员在进行研究的时候,角度比较单一,而且他们主要是在实验室进行研究,广大的用户所面多的环境比较多样,接触的人群较多,符合即时风格块辅助编程的应用要求,用户所反馈出来的信息能够对即时风格块辅助编程的研究产生一定的积极影响。因此,需要扩大范围。

2.2 综合因素进行考虑

对于即时风格块辅助编程来说,只是计算机编程中的一个环节而以,虽然起到了很重要的作用,得到了很大的发展,但并没有办法完全的代替全部的计算机编程,鉴于这样的情况,必须在运用的过程中,综合因素进行考虑。从内部来说,需要考虑到其他的环节,计算机编程具有多个版块和方面,即时风格块辅助编程占据其中重要的一环,只有让即时风格块辅助编程与其他的环节产生良性的循环,才能让用户有最好的体验;从外部来说,需要与计算机的系统等方面兼容,只有这样才能保证即时风格块辅助编程在运用的过程中不会受到外力的干扰。

2.3 自身进行优化

在上文中,我们提到了即时风格块辅助编程存在步骤复杂的情况,为了让用户更好的使用即时风格块辅助编程,必须对步骤进行一定的简化,对即时风格块辅助编程进行一定的优化处理。其中,简化步骤只是一个方面,在即时风格块辅助编程中,有很多的方面都可以进行优化,比方说在与其他程序进行配合使用的时候,会有一些重复的程序出现,重复的程序可以进行一定量的删除,减少空间,这样就可以提高即时风格块辅助编程的性能,使用户在使用风格块辅助编程的时候,更加的流畅,同时不会影响到其他程序的使用。

3 对计算机编程中即时风格块辅助编程的运用方法的思考

3.1 从实际的情况出发

对于科研人员来说,即时风格块辅助编程已经得到了很大的发展,面对新的环境,新的用户,科研人员需要研究出新的成果。但客观因素的制约性较强,主观性因素没有办法改变,很多的科研人员由于主观因素过强,没有从实际的情况出发,片面的追求即时风格块辅助编程的某一方面,或者计算方式、或者步骤的简化,导致在即时风格块辅助编程方面,开始使用的时候,的确显现出了一定的优势,但在日后的使用中,隐患逐渐的凸显,对用户造成了很大的损失。在计算机编程中,需要进行不断的调查和研究,了解用户的需求和社会的发展情况,从实际的情况出发,这样才能研究出最好的即时风格块辅助编程,一旦片面的追求某一个方面,只会产生消极的影响。

3.2 借鉴国际的先进技术

在计算机编程中,国际的技术已经达到了较为高端的水平,我国的即时风格块辅助编程虽然是较为新鲜的领域,但可以借鉴一些国际上先进的技术,这对于推动即时风格块辅助编程的研究,是有一定的积极影响的。在计算机编程中,所有的模块都是环环相扣的,国际的一些先进编程在这方面是非常高端的,我国的即时风格块辅助编程虽然较为先进,但没有与计算机编程中的其他方面良好的配合,鉴于这样的情况,需要进行一定的借鉴,从而弥补这一不足。除此之外,我国的即时风格块辅助编程与国际的很多计算机编程都有以一定的共同之处,良好的借鉴具有很大的促进作用。

4 总结

计算机编程是现阶段社会发展不可或缺的一个因素,而即时风格块辅助编程又是社会关注的焦点,我国经过不懈的努力,已经取得了一定的成果,对广大的用户产生了较为广泛的积极影响。本文对计算机编程中即时风格块辅助编程的运用方法进行了一定的思考,除了本文所阐述的方面,加强自主研究也是非常重要的一个方面,任何一个国家在计算机编程中都在不断的自主研究,只有这样才能获得更大的突破。相信我国在将来的发展中,一定会在即时风格块辅助编程的运用方法上,得出更加高端的方式。

参考文献:

[1]文韬.浅谈计算机编程能力的构思[J].新课程学习(社会综合),2009(04).

[2]清水.7种正在流行的编程语言[N].计算机世界,2010(40).

[3]李建新,肖天灿.归纳法应用在计算机编程中的一个案例[J].实验教学与仪器,2010(05).

编程理论 篇3

在现代制造业中, 有许多零件都具有螺纹特征。螺纹常用于可拆卸固件的联接、紧固, 还可以用来传递动力, 在各个领域应用非常广泛, 对现代制造业的发展起到了重要关键作用。传统的螺纹加工方法主要有外螺纹用普通车床车削, 工作时需多次走刀才能切出螺纹轮廓, 内螺纹采用丝锥攻丝, 工作时必须先把螺纹底孔加工好, 然后换刀进行加工, 辅助时间长[1], 生产效率低且对操作者的技能水平要求较高。随着先进制造业的发展, 专业螺纹生产厂广泛采用滚丝、扎丝、搓丝等一系列先进制造技术, 取得了良好效果, 但在一般的机械加工厂中, 通常还是采用车削的方法来加工, 因此学习和灵活运用螺纹的数控车削加工技术是编程人员和机械加工人员必须掌握的重要技能之一。

1 螺纹数控车削加工编程理论分析

1.1 螺纹数控加工的理论指导现状

目前对螺纹的数控车削加工方法理论不统一, 各专家编者、企业生产实际对螺纹的加工方法理论也不同, 特别是对如图1所示的螺纹牙型的牙高h大小确定更是说法不一, 最具典型的说法有以下两种:

1) 根据GB192~197—81普通螺纹国家标准规定, 普通螺纹的牙型理论高度H=0.866P, 实际加工时, 由于螺纹车刀刀尖半径的影响, 螺纹的实际切深有变化。根据GB197—81规定螺纹车刀可在牙底最小削平高度H/8处削平或倒圆, 螺纹实际牙型高度h=H-2 (H/8) =0.649 5P, 式中H为螺纹原始三角形高度, P为螺距[2]。

2) 顺德职业技术学院徐建高在其编著的数控车削编程与考级里面介绍于普通三角形螺纹牙高h=0.5413P[3], 持有这种牙高计算理论的还有耿金良等在其著作里介绍普通三角形螺纹牙高h=0.5413P[4], 而且在目前广泛应用的Master CAM9.0或9.1版本的自动编程软件里面, 对于数控车削模块中螺纹切削加工的螺纹型式参数设定里, 不管是由表选取还是利用公式计算, 螺纹牙高h都是等于0.5413P, P为螺距。

也有些编者提出实际牙型高度h=H-2 (H/7) =0.6186P[5], 而且对于螺纹大径的大小也是有不同的计算方法, 因此在目前这种螺纹切削加工理论指导不统一的情况下, 只有亲自拿着量具或标准件, 到数控车床上进行实际编程加工的螺纹测量或啮合试验研究才能得出切合实际生产所需要的螺纹切削加工的理论方法。

1.2 当前螺纹数控切削加工理论方法存在的问题

选取FANUC Oi T系统数控车床进行以上几种螺纹数控切削加工方法的切削试验, 试验结果发现无论采取哪一种螺纹牙型计算方法进行代码编程加工, 都会出现切削螺纹与标准件不能啮合的现象, 具体测量发现问题有:1) 螺纹牙型不对, 要求加工出普通三角形螺纹, 切削出来梯形或矩形螺纹。2) 螺纹牙深深浅不一, 直接影响了啮合。3) 不能与标准件进行啮合, 也就是螺纹中径不合格出现通止规不符合旋进旋出要求的现象, 即螺纹不合格。

1.3 切合生产实际的螺纹数控车削理论方法

1.3.1 螺纹数控车削的常用指令

螺纹数控车削的指令代码很多, 不同系统螺纹切削指令代码有所不同, 本文以应用最为广泛的FANUC系统为例进行说明, FANUC系统常用的螺纹切削指令有:G32、G34、G92、G76) , 现分别说明其指令应用格式及其特点。

恒螺距螺纹切削指令:G32 X (U) __Z (W) __F__;

不等距螺纹的切削指令:G34 X (U) __Z (W) __F__K__;

单一螺纹切削循环指令:G92 X (U) __Z (W) __R__F__;

螺纹切削自动循环复合切削指令:G76P (m) (r) (α) Q (△dmin) R (d) ;

G76 X (U) __Z (W) __R (i) P (k) Q (△d) F (L) ;

式中:X、Z——螺纹切削终点绝对坐标;

U、W——切削终点相对于起点增量坐标;

F——螺纹导程;

R——切削起点至切削终点的半径差, 有正负, 当R=0时, 可省略不写, 代表切削圆柱螺纹;

K——是指螺纹每导程的变化量, 其增 (减) 范围在系统参数中设定 (孙杰不等距螺纹的数控车削机械工程师2 0 0 8年第2期:2 9-31) , 当K=0时, 功能等同于G32;

在复合切削指令G76格式中:m——精车削次数, 必须2位数:01~99;

r——螺纹末端倒角量, 大小可设定在0.0-9.9Pn之间, 系数为0.1的整数倍;Pn为导程;必须2位数:00~99:倒角量=倍数×0.1×导程;

α——刀具角度, 有30°、55°、60°等, 常取标准60°米制螺纹;

M、r和a用地址P同时指定, 例如:m=2、r=1.1Pn、a=60, 表示为:P021160;

△dmin—最小切削深度 (半径值) , 不可用小数点表示;数值为实际数值的1000倍

d——精车余量; (可以小数表示也可×1000)

i——螺纹终点D到起点C的向量值 (半径) , 如i=0可省略;

k——螺纹牙深 (半径值) , 有些系统不可用小数点表示;

△d——第一刀切削深度 (半径值) , 不可用小数点表示;

L——螺纹螺距。

以上各螺纹切削指令都能完成圆柱螺纹、圆锥螺纹、端面螺纹、外螺纹和内螺纹以及左旋螺纹和右旋螺纹的切削加工功能, 只是在参数设置上进行修改就可以切削加工。

1.3.2 普通三角螺纹数控车削有关尺寸计算

1) 螺纹牙型尺寸确定。普通三角螺纹的基本牙型各基本尺寸如图2所示:螺纹螺距为P。螺纹原始三角形高度H=0.866P, 根据国标规定。

螺纹大径D:螺纹大径在螺纹加工前, 由外圆车削得到, 该外圆的实际直径通过其大径公差

带或借用其中径公差带进行控制。实际加工受到螺纹车刀刀尖形状及其尺寸刃磨精度的影响, 为保证螺纹中径达到要求, 故在编程或车削过程中通采用以下经验公式进行调整或确定其编程大径, 即螺纹大径D=基本尺寸- (0.1~0.3) mm或螺纹大径D=基本尺寸-0.13×F。实际尺寸确定需要看螺纹啮合的松紧程度, 要求螺纹啮合的紧, 则螺纹大径D值就要适当大一点, 要求啮合的松, 则螺纹大径D值就取小一点。总之要有外螺纹是“公”, 内螺纹是“母”的概念, 即螺纹啮合时需要“公”小一点, “母”大一点才可以啮合。因此螺纹大径D要根据匹配螺纹间的松紧程度进行确定, 也就是内外螺纹的配合要在螺纹配合等级内。

实际螺纹牙高h:根据国标规定取h=0.6495P。

螺纹小径D1:D1=D-2×h。

螺纹中径D2:在数控车床上, 螺纹的中径是通过控制螺纹的削平高度 (由螺纹车刀的刀尖体现) , 牙型高度, 牙型角和底径来综合控制的。

2) 螺纹切入点、切出点确定。空刀导入量δ1值和空刀导出量δ2值一般应根据有关手册来计算, 实际编程根据经验可取2-5mm[6], 也可利用下式来简单估算。

空刀导入量δ1>2.5P, 空刀导出量δ2>1.2P, 如果空刀导入量取得太小, 可能产生“乱牙”现象[3]。

3) 螺纹切入点切出点确定切削用量选用

如果螺纹牙型较深、螺距较大, 可分几次进给。每次进给的背吃刀量用螺纹深度减精加工背吃刀量所得的差按递减规律分配。常用螺纹切削的进给次数与背吃刀量可参考表1选取[6]

2 各螺纹指令切削加工编程的对比试验研究

加工如图3所示M30×1.5的外螺纹, 螺纹长度30 mm, 假设毛坯工件已经进行了光轴、退刀槽等粗加工, 本例只是进行螺纹加工。设定切削加工螺纹主轴转速为400r/min, 螺纹刀号为02刀位, 数学计算处理过程及其各指令编程如下:

2.1 尺寸的数学计算处理

螺纹大径D=公称尺寸-0.1 3×F=29.805 mm,

或取经验值29.8 mm;实际尺寸要根据试切后测量或与标准件啮合的松紧程度进行调整确定, 使其符合技术要求。

螺纹牙高h=0.649 5*1.5=0.974 mm, 据国标计算。

螺纹小径D1=D-2*h=27.856 mm, ;实际尺寸也要根据试切后测量或与标准件啮合的情况进行减小或增大调整确定, 使其符合技术要求。

空刀导入量δ1=4mm>2.5P=3.7mm。

空刀导出量δ2=2mm>1.2P=1.8mm。

2.2 各螺纹指令切削加工编程的对比试验研究

由本例可以看出G32、G34指令在编写螺纹切削加工程序时, 车刀的切入、切削、提刀和返回都要写在程序中, 要多次进刀才能切削完成, 编程程序较长、且易发生书写错误。G92指令是螺纹加工循环指令, 一次定义后循环进给路线与G32、G34基本相同, 但G92指令除螺纹切削为进给运动外, 其余切入、提刀、返回均为快速运动, 而G32、G34对于车刀每一步运动都需要定义。且三者进刀方式为直线式, 如图4所示, 直进式车削螺纹时的车刀左、右两侧刀刃同时参加切削, 刀具两侧受力、磨损均匀, 能够保证螺纹牙型精度, 但此种切削方式切削力大、排屑困难, 磨损较快等问题, 在加工中要经常测量, 因此多用于小螺距高精度螺纹切削加工[7]。

G76指令进刀方式为斜线式, 如图5所示, 切屑从刀刃上卷开, 形成条状屑, 散热较好。缺点是另一刃发生摩擦, 导致积屑瘤的产生、表面粗糙度值增高和工件硬化[2], 从而造成螺纹牙型精度不高, 因此, G76指令一般适用于大螺距低精度的螺纹切削加工[7]。虽然G76程序较短, 但参数设置太多, 较容易出错, 同时计算机需要计算的时问也较长, 不够简单明了, 只有加工较大螺距的螺纹时才采用。因此, 常用螺距 (P=1~4) 的螺纹加工, 经常采用G92指令编程, 程序较简单, 参数设量清晰, 不容易出错[8]。

3 结论

准确合理地确定螺纹大径、螺纹牙高和螺纹小径是螺纹数控车削加工编程的关键, 同时也是螺纹加工合格的保证。根据零件图纸选择确定数控加工内容并进行加工工艺分析, 灵活准确的进行零件图形的编程尺寸数学计算处理, 进行编程试切加工并调整程序, 最终确定出切合实际生产要求的螺纹数控车削理论方法。

参考文献

[1]寇元哲, 刘玉春.基于FANUC宏程序的螺纹数控加工及编程应用研究[J].中国农机化, 2007 (5) :82-84.

[2]陈书法, 姚传维, 朱建忠.螺纹的数控切削工艺研究[J].连云港化工高等专科学校学报, 15 (3) :23-28.

[3]徐建高.数控车削编程与考级[J].化学工业出版社, 2006, 1:28-29.

[4]耿金良, 孟祥坡, 张金伟.数控车削加工螺纹[J].数控机床市场, (10) :120-122.

[5]http://www.wendang365.cn/view/53956?jdfwkey=ohhcz1

[6]杨建明.数控加工工艺与编程[M].北京理工大学出版社2006:154-155.

[7]董小金.FANUC数控系统螺纹切削循环指令的区别及应用[J].机械制造与自动化, 2007, 36 (6) :64-65.

编程民主化 篇4

能把猪吹上天的台风口,现在刮到了可穿戴计算和智能家居。以可穿戴计算设备为例,随便网上搜一搜,从苹果Apple Watch到三星Galaxy Gear等智能手表,从小米到华为的智能手环,还有无数知名的不知名的牌子,令人眼花缭乱。

除了即将上市的Apple Watch,笔者体验过几十款可穿戴计算设备,包括智能手表、手环、戒指、运动鞋等,千篇一律的功能,无非聚焦在时间显示、测步、测心跳血压、睡眠监测等方面,至多过一天就了无新意。

当然,这些功能的背后是海量个人信息的云端数据积累,意味着巨大的财富。但是,这些功能除了能为苹果、谷歌、三星和中国的BAT、小米等大公司带来巨额财富外,与消费者个人又有什么关系?

幸好,还有创业者在发挥着富有创新精神的想象力。譬如Noodoe智能手表,这款灵感源于乐高积木的腕上设备,提供极简单的编程接口与脚本语言,消费者可创作并自由导入混合了文本与图片的点阵图信息,比如“I Love you”、像筛子点数或扑克牌一样的时间显示,或是一棵树。“我们希望把编程民主化,让所有人都能在Noodoe上实现他们的想法。”Noodoe创始人John如是说。

编程民主化,这句话说得真好。事实上,不管Noodoe能否取得市场成功,它都唤醒了尘封已久的创新思维。

纵观1970年代兴起的全球IT浪潮,最早一波PC(个人电脑)的成功,就源于无数热血青年在車库或教室里的组装与开发,他们把原先庞大、昂贵、专属的计算机,变成了桌上、廉价、普适化的个人电脑;他们本身是编程(开发)民主化的践行者,又是数字民主化的平台打造者;他们是一串耳熟能详的名字,譬如乔布斯与沃兹尼亚克(苹果公司)、盖茨与艾伦(微软公司)、迈克尔·戴尔(戴尔公司)……再往前推,HP创始人的“车库精神”,是这种创新精神的源头代表;再往后推,万维网创始人蒂姆·伯纳斯·李向全世界免费献出WEB专利,是今天无数互联网创新与财富的基石。

编程民主化的实质,是如何定义用户与技术创新的关系,以及由此衍生的价值判断——究竟是将用户作为设备(或服务)的真正主人,还是仅仅将用户作为数据采集器的信息源,决定了截然不同的设计思路。

纵观近四十年来的IT重大创新,从PC到互联网,从智能手机到移动互联网,改朝换代式的重大技术创新,总是伴随着数字民主化浪潮。譬如互联网时代的电子商务,赋予了千千万万小微个体在网上做生意的可能;再如移动互联网的自媒体,赋予了更多的信息表达权利和赚取财富的机会。

但有一个不好的趋势,巨头掌控下的世界,越来越磨灭着最初数字民主化的精神和未来民主化的可能。试想,当一切被垄断时,我们除了消费大公司主导的单一供给,还能做点儿什么?

回到中国,我们一直自豪于在互联网革命浪潮的起跑线上,基本与全球同步。当拥有了全世界最大网民群体以后,面对汹涌澎湃的万物互联时代,我们是否应该在“数字民主化”的国家战略上,予以深思并实现跨越式领先呢?

现实并不乐观,但笔者依然期待。

编程理论 篇5

1 传统编程教学活动的特点

传统编程教学活动存在一些显而易见的问题:

1.1 冗长的语法学习过程

目前在高等教育学校的编程学习中, 几乎无一例外的以C、C++、C#、VB.net或java等为主, 其中VB.net相对还是比较好掌握的编程语言, 而C、C++所属强类型编程语言语法的复杂, 及大量出现的语法陷阱使得学生在大多数的时间里成为一个“纠错者”, 在学习过程中花费不菲的时间来修正代码中的错误和漏洞, 而忽视了编程思想的培养, 容易造就会编程语言工具、不会实现编程工作的现象。C#虽然是一种较好的面向对象编程语言, 但在实现上对计算机环境的配置要求还比较高, 对一些资金上比较紧张的学校机房来说, 更新设备的代价太大, 同时由于C#不支持除windows以外的平台, 造成某些欲在非windows系统环境下学习的学生缺乏相关的学习环境。

1.2 校内授课制度的局限

编程语言的学习是一个长期和持续的过程, 往往对时间上的需求较多。而学校教学活动的局限性, 如为避免课程与课程的冲突、不能对编程课程进行集中授课, 而是像学习历史、政治一样分节学习, 造成上节课学习的内容这节课就忘记的现象比比皆是。编程类课程在客观上本就容易令学生产生厌学情绪和学习的枯燥感, 而学生迫于就业压力往往产生在校内学习、课外还报修各种社会编程学习班的普遍现象。

1.3 对学生自身学习背景的强烈依赖不利于非计算机专业学生的自修

学习上历来是“师傅领进门, 修行在个人”, 教师不论教学能力多高, 最终起到的还是一个启蒙的作用。然而, 一门过于难以掌握的语言大幅度提高了学生自己持续学习的难度。比如C语言的学习, 要求学生具有较扎实的计算机背景, 对堆栈、内存、指针、数组等有较深入的了解, 对代码的书写有诸多严格的要求。对外专业或计算机背景知识不扎实的学生来说, 查看程序代码如看天书, 书写产生错误的时候又找不到究竟是书写错误还是逻辑错误。一来二去很容易就此放弃。

2 Python在教学中能起到的作用

2.1 降低了学习的难度

Python的代码书写规则与计算机算法中的“伪代码”极其相似, 由于其最初被发明的时候就是为了增强其易用性 (Guido van Rossum参考了ABC语言的特性进行了开发) , 其语言的书写接近于日常英语, 可以说只要略加学习, 就可以迅速掌握, 这对教学资源的节约起到很好的作用;python对unicode字符集全面支持, 我们不用去考虑ascii字符集的字节存储空间问题 (unicode字符在其它语言中都存在较复杂的转换问题) , 而直接编写出可以被执行的小程序;由于python强大的序列 (Python的序列包括各类定长数组、动态数组、字符串等等的特性) 操作能力, 使得在同一个序列中放置不同数据类型的数据成为轻而易举的事, 我们不必再进行复杂的组合变量声明和处理;python隐藏了所有指针的行为, 所有的变量值都是引用类型, 令我们掌握起来更加容易。

而Python自身的IDLE不论是在windows上还是在UNIX上都有很好的支持。只需要对python进行简单的入门学习, 就可以迅速在短时间内书写出执行效率高的代码。

2.2 增强学生学习的动力

由于抛开了对专业背景的过度依赖, 使得非计算机专业的学生也有可能快速掌握并进行编程实践, 极大地提高了学生对编程思想的理解。在国内存在着数量庞大的编程爱好者, 这些爱好者往往没有经过系统的计算机理论的学习, 而Python的易用性基本可以克服这种对专业知识的过分依赖, 面向用户的设计和偏重程序逻辑的编码方式让人从“计算机式思考”解脱出来, 进入提升编程思路的良性循环中来。

2.3 强大的类库降低编程的复杂性

Python有强大的各种类库的支撑, 大量开源、免费的编程资源的存在和便于布置使得很容易快速实现开发和测试。Python是开源的, 这意味着为了工作的方便性, 我们可以自行扩展Python的库, 实现有自己风格特色的类库。

3 Python的未来需求

就业作为高校教学目的之一, 未来必然会逐步加强对学生就业能力的培养。Python作为一门较新的编程语言, 经过最近几年的逐步推广, 现在已渐渐成为一门热门的程序语言, 未来的就业前景广阔。Python贴合自然语言的伪代码风格和注重编程逻辑的编程方式, 注定会在未来有广阔的应用。学生通过不同课程、不同知识采用它来编写小程序, 来理解相关理论知识, 对学生理论联系实际的能力的提高具有一定作用, 同时对其它编程语言的学习也起到较强的辅助作用。

参考文献

[1][美]Mark Summerfield, 著.王弘博, 孙传庆, 译.《Python3程序开发指南》 (第二版) .[1][美]Mark Summerfield, 著.王弘博, 孙传庆, 译.《Python3程序开发指南》 (第二版) .

编程理论 篇6

1. 类比延伸法

类比延伸法是将学生在已学过的专业基础知识、技能的基础上与将学的新知识、新技能进行类比, 引申, 挖掘其中的共性, 突出其中的个性, 从而达到掌握新知识巩固旧知识的方法。考虑到学生已经对刀具的刃磨和普通车床的操作加工比较熟悉, 具备一定的感性认识, 因此在学生最初学习这门课程时, 以学生们比较熟悉的普通车床操作作铺垫, 在理论和操作上类比, 从机床的结构、加工适用场合、操作者手动操作可实现的一系列相关功能、简单机械加工工艺、加工过程中切削参数的选择等等, 以这些知识点为基础, 引出数控加工中的基本概念、原理和操作技能, 比较它们之间存在的异同。采用这种类比延伸的教学方法, 抓住事物的共性进行类比, 既巩固已知知识, 又掌握新知识;同时突出个性进行区别, 又掌握新事物的要点。

2. 数学引入法

数学引入法是在对理工科知识的学习过程中采用数学思维的方法利用数学这一基础工具, 将所学知识进行转化并深入理解, 掌握本质的方法。采用这种方法, 可以将抽象、枯燥的理论知识转化为熟悉的数学问题。我院机电工程中心现有数控机床和系统种类齐全, 这门课程涉及到的基本概念和指令用法都可以在这些设备上得到验证。在基本概念和主要难点的学习过程中, 我们将一些典型的知识难点转化为数学问题去分析讲解, 例如在讲解机床坐标系、工件坐标系、对刀原理和操作步骤、刀具补偿功能等概念时, 我们将课堂搬到车间, 教师一边操作, 一边结合具体的概念讲解, 让学生仔细观察, 同时认真记录老师在操作过程中产生的各种数据, 然后让学生按坐标变换关系计算;在学生完成计算结果后, 教师应用相应的指令编写程序输入系统, 调用执行验证, 让学生拿自己的计算结果与系统显示屏上显示的执行结果相比较, 这样学生就很轻松地明白了这些概念的含义及应用, 同时也初步掌握了数控系统处理数据的过程。

3. 单元渐进法

单元渐进法是将数控车工、数控铣工等工种的国家职业技能中等等级鉴定标准中考核的鉴定点的应知知识点为主线, 以必需、够用为度, 按课题单元的方式进行授课, 更好地实现理论与实践统一的教学方法。在讲授这门课程时, 结合现有设备, 以华中数控系统为主, 将内容分为数车和数铣、加工中心两大模块, 针对机电工程中心现有实训条件, 精心选择针对性较强、覆盖面较广的课题进行讲解、讲练结合, 这些课题同时也是实训时采用的课题。以数车为例, 采用的课题从简单台阶轴—带倒角、圆角台阶轴—切槽、切断—普通三角螺纹—特形面 (刀尖圆弧半径补偿) —中等难度综合件加工 (工艺、复合循环指令) —中级难度综合件加工 (综合应用, 一夹一顶) 的顺序安排课题, 以职业技能所依托的理论知识和技能为主线, 难度逐渐加深。由于在课程实训阶段要求学生上车自己加工完成, 这对学生对所学知识掌握的精确性和应用的规范性均提出了很高的要求, 对于没有实践经验的学生是很难做到的;如果仅仅是理解了所学的知识而不知道其在应用中的注意事项, 那么在实际加工中是很容易出现这样那样的问题, 轻的加工工件报废, 重则可能发生撞车、工伤等严重事故。因此, 在讲解每一类课题时, 需要结合过去在实训过程中学生容易存在的问题进行点评、总结、提醒, 这样就大大避免了学生学习时走弯路, 同时也为后期课程实训打下良好的基础, 做到了课堂学习和课程实训的有机统一。

4. 经验排难法

“编程”入迷,当心“网瘾” 篇7

小宜是一名中学生。上学期,学校里开设了网站建设课程,小宜对此表现出了极大的兴趣。通过努力,小宜有了自己的网站。

一学期的课程结束了,但小宜对网络的“热爱”却没有结束。一放学,他回家第一件事情就是打开电脑、下载软件,维护自己的网站。刚开始,他只是下载一些与网站制作有关的软件。可是慢慢地,他开始下载一些与网站制作无关的软件,比如文件分割器、财务软件通等等。

小宜说:“我也不知道为什么,就是想下载,然后试用。虽然有很多软件我根本不知道它们有什么作用,但我就是想研究,我觉得自己会成功的。”

小宜的父母则非常着急:“原先一直以为孩子上网学习,自己研究软件、编程序是件好事。但是,看到他现在的样子,简单像是走火入魔,学习被耽误了不算,每天都在电脑上忙,有时连饭都不吃,觉也不好好睡,却也没见他忙出什么来。眼看就要升学了,这可怎么办啊!”

心理咨询师意见

小宜这种情况是网络成瘾的一种类型,被称为“网络技术成瘾”。这类成瘾的青少年往往会下载使用各种软件,以追求网页制作的完美和编制各种各样程序为嗜好。他们往往沉迷于电脑程序的设计,自认为能成为一流的游戏和计算机程序的设计者。由于迷恋于网络不能自拔,以致影响了正常的学习和生活。值得注意的是,他们与电脑程序员的工作不同;网络技术成瘾患者往往没有目的、计划。另外,网络技术成瘾不像游戏成瘾或网络聊天成瘾那样明显,它通常会蒙蔽成瘾者的家长,使他们误认为孩子在研究网络技术,从而放松了警惕。

克服“技术瘾”的建议

治疗普通网络成瘾的方法在此也同样适用。需要注意的是,家长有必要特别提醒一下孩子,让孩子知道他的这种行为其实也是网络成瘾,因为这同样影响到了他正常的学习和生活,影响到了他的健康成长。当孩子认识到这也是一种问题时,可能会对控制成瘾行为有很大作用。另外还可以通过以下方法进一步控制网络技术成瘾。

1. 上网之前限定目标。每次上网之前花两分钟时间想一想:本次上网干些什么?把具体要完成的任务列在纸上。不要认为这个两分钟是多余的,它可以为你节省10分钟、半小时,甚至几个小时。

2. 上网之前先限定时间。看一看列在纸上的任务,估计一下大概需要多长时间完成。假如估计要用40分钟,那么把小闹钟定到20分钟,到时候看看进展到哪里了。如果嫌用闹钟麻烦,可以在电脑中安装一个定时提醒的小软件,在上网的同时打开,这样就能有效控制上网时间了。

3. 采用新的时间模式。打乱以往惯常的网络使用时间表,采用一种新的时间模式,从而打破上网习惯。比如,原来晚上上网,现在改为白天上网;原来每天要连续上网几个小时,现在可以将之打乱,分几次来完成……

4. 形成良好网络使用习惯。不要把上网当作逃避现实生活问题或排遣消极情绪的工具。这么做会适得其反。因为当几个小时后下网时,问题仍然在那儿。而且,上网行为会在不知不觉中会得到强化,以后遇到同样问题时,你连想都不想就直接打开电脑上网了,从而形成了一种不良的上网习惯。所以要强调养成良好的上网习惯,切忌心情不好时向网络要安慰。此时,最好出去走走,运动运动,找个人说说话,等等。

(本文摘编自华东师范大学出版社《青少年网络成熟预防与治疗》一书)

上一篇:财务会计管理模式研究下一篇:中国古代婚姻要旨