CN110032361B - 实验模拟方法、装置、电子设备和计算机可读存储介质 - Google Patents

实验模拟方法、装置、电子设备和计算机可读存储介质 Download PDF

Info

Publication number
CN110032361B
CN110032361B CN201810027505.5A CN201810027505A CN110032361B CN 110032361 B CN110032361 B CN 110032361B CN 201810027505 A CN201810027505 A CN 201810027505A CN 110032361 B CN110032361 B CN 110032361B
Authority
CN
China
Prior art keywords
experimental
scene
component
components
experiment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810027505.5A
Other languages
English (en)
Other versions
CN110032361A (zh
Inventor
郑振波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810027505.5A priority Critical patent/CN110032361B/zh
Publication of CN110032361A publication Critical patent/CN110032361A/zh
Application granted granted Critical
Publication of CN110032361B publication Critical patent/CN110032361B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation

Abstract

本发明揭示了一种实验模拟方法、装置、电子设备和计算机可读存储介质。所述方法包括:接收对应于实验场景的选择;通过所选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景;生成所获得实验场景的组件脚本;根据组件脚本调用模拟计算引擎运行实验场景,进行实验场景的模拟计算;通过模拟计算进行实验场景运行中动态变化的显示。由于是通过组件脚本实现的,因此可以获知所选择实验场景对应组件以及组件之间搭配的实现也将是通过脚本的加载而实现,并不需要预先在终端设备中安装Flash运行环境或者Java运行环境,进而使得实验模拟所存在的设备限制得到解除,能够在多终端跨平台实现所需要进行的实验模拟,具备优秀的兼容性能。

Description

实验模拟方法、装置、电子设备和计算机可读存储介质
技术领域
本发明涉及计算机交互应用技术领域,特别涉及一种实验模拟方法、装置、电子设备和计算机可读存储介质。
背景技术
随着计算机技术以及交互设计技术的迅猛发展,在线教育的实现打破了时间和空间的限制,使得用户能够随时随地的接受各种课程。而在通过在线教育提供各种课程和培训的实现中,也随之发展衍生出了课程所涉及实验的动画演示。
用户借助于各种终端设备,即可实现动画所模拟实验的访问,进而在没有实验设备的情况下也能够观察实验所产生的动态变化。除此之外,随着技术的进一步演进,还借助于Flash运行环境或者Java运行环境为用户提供具有交互性能的动画界面,以在用户的交互操作下实现所需要模拟实验的实验场景,进而达成实验场景的绘制以及所对应动态变化的展示。
具体而言,通过终端设备中Flash运行环境或者Java运行环境的安装运行,来执行所对应的可执行包,进而才可在终端设备中实现具有交互性能的动画界面。
然而,Flash运行环境或者Java运行环境存在是受限于终端设备所部署的操作系统的,并且也并非所有终端设备都能够直接运行可执行包。
因此,在线教育的实验模拟实现中,兼容性能不佳,无法支持多终端跨平台。
发明内容
为了解决相关技术中在线教育的实验模拟实现兼容性能不佳,无法支持多终端跨平台的技术问题,本发明提供了一种实验模拟方法、装置、电子设备和计算机可读存储介质。
一种实验模拟方法,所述方法包括:
接收对应于实验场景的选择;
通过所选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景;
生成所获得实验场景的组件脚本;
根据所述组件脚本调用模拟计算引擎运行所述实验场景,进行所述实验场景的模拟计算;
通过所述模拟计算进行所述实验场景运行中动态变化的显示。
一种实验模拟方法,所述方法包括:
在显示区域绘制实验模拟所使用的组件,绘制的所述组件受控于组件参数;
构建所绘制组件之间的搭配,获得所述显示区域中实验场景的显示;
运行所述实验场景,在所述实验场景的运行中显示所述组件之间的配合工作;
在所述组件之间的配合工作中对作用于组件上的变化进行动态显示。
一种实验模拟装置,所述装置包括:
选择接收模块,用于接收对应于实验场景的选择;
场景获得模块,用于通过所选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景;
脚本生成模块,用于生成所获得实验场景的组件脚本;
运行模块,用于根据所述组件脚本调用模拟计算引擎运行所述实验场景,进行所述实验场景的模拟计算;
动态显示模块,用于通过所述模拟计算进行所述实验场景运行中动态变化的显示。
在一个示例性实施例中,所述选择接收模块,包括:
组件选择单元,用于接收对应于实验场景进行的组件选择以及所选择组件的组件参数配置;
组件载入单元,用于在显示区域载入所选择组件,并将所述组件受控于所述组件参数。
在一个示例性实施例中,所述选择接收模块,包括:
场景选择单元,用于接收对已保存实验场景的选择;
脚本获取单元,用于根据所述已保存实验场景获取所对应组件脚本;
绘制单元,用于通过所述组件脚本的加载在显示区域进行组件绘制,并使绘制的所述组件受控于所述组件参数。
在一个示例性实施例中,所述装置包括:
保存选择接收模块,用于接收对所显示实验场景的保存选择;
场景保存模块,用于截取所述实验场景的图像,为所述实验场景存储所述图像和所述实验场景的组件脚本,所述图像用于进行已保存实验场景的预览显示。
在一个示例性实施例中,所述场景获得模块进一步用于根据对应于实验场景的选择,在显示区域完成所述组件相互之间的搭配,形成所搭建并显示的实验场景。
在一个示例性实施例中,所述场景获得模块还用于根据所触发进行的组件搭配操作,或者所加载组件脚本中指定的组件之间搭配关系,在显示区域进行所载入组件的搭配,获得搭建并显示的实验场景。
在一个示例性实施例中,所述实验场景是直流电路实验场景,所述场景获得模块还用于遍历所述直流电路实验场景中的所有组件,如果组件上的触点被导线连接,则向所述导线连接的两个触点分配相同节点标识,使得对应于相同节点标识的触点构成一个节点。
在一个示例性实施例中,所述运行模块包括:
引擎调用单元,用于如果所述直流电路实验场景中所有组件被导线连接且开关闭合形成电路回路,则触发进行所述组件脚本对应模拟计算引擎的调用;
模拟运算单元,用于通过调用的所述模拟计算引擎,在所述直流电路实验场景中根据节点之间所存在组件的组件参数运算组件所对应的电流和电压。
在一个示例性实施例中,所述动态显示模块进一步用于根据运算所得到组件对应的电流和电压,控制所述直流电路实验场景的电路回路上的照明亮度和/或仪表显示。
一种实验模拟装置,其特征在于,包括:
组件绘制模块,用于在显示区域绘制实验模拟所使用的组件,绘制的所述组件受控于组件参数;
搭配构建模块,用于构建所绘制组件之间的搭配,获得所述显示区域中实验场景的显示;
运行模块,用于运行所述实验场景,在所述实验场景的运行中显示所述组件之间的配合工作;
组件变化显示模块,用于在所述组件之间的配合工作中对作用于组件上的变化进行动态显示。
在一个示例性实施例中,所述组件绘制模块包括:
选择单元,用于根据组件选择或已保存实验场景选择,进行显示区域中实验模拟所使用组件的绘制,获得显示区域中组件的分布;
组件受控配置单元,用于配置所述显示区域分布的组件受控于对应的组件参数。
在一个示例性实施例中,所述运行模块,包括:
运行响应单元,用于根据所述实验场景以及所述实验场景中组件受控的组件参数进行模拟计算,响应对所述实验场景的运行选择,获得所述组件之间配合工作的模拟计算结果;
工作过程显示单元,用于按照所述模拟计算结果控制显示所述组件之间配合工作的过程。
一种电子设备,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如前所述的方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述的方法。
本发明的实施例提供的技术方案可以包括以下有益效果:
为进行实验模拟,将首先接收对应于模拟实验场景的选择,通过所选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景;然后相应生成所显示获得实验场景的组件脚本,根据组件脚本调用模拟计算引擎,以通过模拟计算引擎运行实验场景,进行实验场景的模拟计算,最后通过模拟计算进行实验场景运行中动态变化的显示,至此,便实现了实验的模拟,并且由于是通过组件脚本实现的,因此可以获知所选择实验场景对应组件以及组件之间搭配的实现也将是通过脚本的加载而实现,并不需要预先在终端设备中安装Flash运行环境或者Java运行环境,进而使得实验模拟所存在的设备限制得到解除,能够在多终端跨平台实现所需要进行的实验模拟,具备优秀的兼容性能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1是根据一个示例性实施例示出的本发明所涉及实施环境的示意图;
图2是根据一示例性实施例示出的一种装置的框图
图3是根据一个示例性实施例示出的一种实验模拟方法的流程图;
图4是根据图3对应实施例示出的对步骤310的细节进行描述的流程图;
图5是根据另一示例性实施例示出的对步骤310的细节进行描述的流程图;
图6是根据图3对应实施例示出的对步骤370的细节进行描述的流程图;
图7是根据另一示例性实施例示出的一种实验模拟方法的流程图;
图8是根据一示例性实施例示出的组件以及组件之间搭配示意图;
图9是根据图8对应实施例示出的对组件进行组件参数配置的示意图;
图10是根据一示例性实施例示出的电流回路示意图;
图11是根据一示例性实施例示出的实验模拟的实现示意图;
图12是根据图8对应实施例示出的所模拟实验中组件被错误连接的示意图;
图13是根据图8对应实施例示出的所模拟实验中电压过大而使得灯泡烧坏的示意图;
图14是根据一示例性实施例示出的一种实验模拟方法的流程图;
图15是根据图14对应实施例示出的对步骤510的细节进行描述的流程图;
图16是根据图14对应实施例示出的对步骤550的细节进行描述的流程图;
图17是根据一示例性实施例示出的一种实验模拟装置的框图;
图18是根据图17对应实施例示出的对选择接收模块的细节进行描述的框图;
图19是根据图17对应实施例示出的对选择接收模块的细节进行描述的框图;
图20是根据图17对应实施例示出的对运行模块的细节进行描述的框图;
图21是根据另一示例性实施例示出的实验模拟装置的框图;
图22是根据另一示例性实施例示出的一种实验模拟装置的框图;
图23是根据图22对应实施例示出的对组件绘制模块的细节进行描述的框图;
图24是根据图22对应实施例示出的对运行模块的细节进行描述的框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一个示例性实施例示出的本发明所涉及实施环境的示意图。该实施环境包括:终端设备110以及服务端130。
终端设备110用于通过前端显示的进行而为所模拟实验实现交互,以便于使得用户能够自由搭建所需要的实验场景,进而通过实验场景的运行而获得实验效果。
服务端130则是终端设备110中的实现而进行部署的,以为终端设备110实现各种在线功能,进而为实验的模拟能够多终端跨平台的实现奠定基础。
在此实施环境中,通过执行本发明所示的方法,使得用户能够基于所加载的脚本实现与组件的交互,以及组件所构成实验场景的运行,不再依赖于Flash运行环境或者Java运行环境,进而使得实验模拟的限制得到解除。
图2是根据一示例性实施例示出的一种装置的框图。例如,装置200可以是图1所示实施环境中的终端设备110。例如,终端设备110是智能手机、平板电脑等终端设备。
参照图2,装置200至少包括以下组件:处理组件202,存储器204,电源组件206,多媒体组件208,音频组件210,传感器组件214以及通信组件216。
处理组件202通常控制装置200的整体操作,诸如与显示,电话呼叫,数据通信,相机操作以及记录操作相关联的操作等。处理组件202至少包括一个或多个处理器218来执行指令,以完成下述的方法的全部或部分步骤。此外,处理组件202至少包括一个或多个模块,便于处理组件202和其他组件之间的交互。例如,处理组件202可以包括多媒体模块,以方便多媒体组件208和处理组件202之间的交互。
存储器204被配置为存储各种类型的数据以支持在装置200的操作。这些数据的示例包括用于在装置200上操作的任何应用程序或方法的指令。存储器204至少由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static RandomAccess Memory,简称SRAM),电可擦除可编程只读存储器(Electrically ErasableProgrammable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。存储器204中还存储有一个或多个模块,该一个或多个模块被配置成由该一个或多个处理器218执行,以完成下述图3、图4、图5、图6、图7、图13、图14和图15任一所示方法中的全部或者部分步骤。
电源组件206为装置200的各种组件提供电力。电源组件206至少包括电源管理系统,一个或多个电源,及其他与为装置200生成、管理和分配电力相关联的组件。
多媒体组件208包括在所述装置200和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,简称LCD)和触摸面板。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。屏幕还包括有机电致发光显示器(Organic Light Emitting Display,简称OLED)。
音频组件210被配置为输出和/或输入音频信号。例如,音频组件210包括一个麦克风(Microphone,简称MIC),当装置200处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器204或经由通信组件216发送。在一些实施例中,音频组件210还包括一个扬声器,用于输出音频信号。
传感器组件214包括一个或多个传感器,用于为装置200提供各个方面的状态评估。例如,传感器组件214检测到装置200的打开/关闭状态,组件的相对定位,传感器组件214还检测装置200或装置200一个组件的位置改变以及装置200的温度变化。在一些实施例中,该传感器组件214还包括磁传感器,压力传感器或温度传感器。
通信组件216被配置为便于装置200和其他设备之间有线或无线方式的通信。装置200接入基于通信标准的无线网络,如WiFi(WIreless-Fidelity,无线保真)。在一个示例性实施例中,通信组件216经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件216还包括近场通信(Near Field Communication,简称NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(Radio FrequencyIdentification,简称RFID)技术,红外数据协会(Infrared Data Association,简称IrDA)技术,超宽带(Ultra Wideband,简称UWB)技术,蓝牙技术和其他技术来实现。
在示例性实施例中,装置200被一个或多个应用专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、数字信号处理器、数字信号处理设备、可编程逻辑器件、现场可编程门阵列、控制器、微控制器、微处理器或其他电子元件实现,用于执行下述方法。
图3是根据一个示例性实施例示出的一种实验模拟方法的流程图。该实验模拟方法适用于图1所示实施环境。如图3所示的,该实验模拟方法,至少包括以下步骤。
在步骤310中,接收对应于实验场景的选择。
其中,实验场景是所进行实验模拟而落地的场景,实验场景用于进行实体存在的实验设备以及所存在相互作用关系的模拟,并进行实验设备以及所存在相互作用状态进行工作状态下的呈现。
应当理解,所进行的实验模拟是为了面向用户提供自由操控实现设备以及执行实验设备所对应实验方案而进行的,也是为了通过模拟的方式向用户输出实验方案所能够获得的实验效果。因此,实验场景将是以动态画面的形式存在的,是为用户执行实验而提供的一个虚拟环境。
实验场景随着自身搭建过程的进行以及所自身运行过程的实施,所呈现动态画面的内容各不相同。例如,在自身搭建过程中,实验场景可能仅包含对应于部分实验设备的组件,也可能包含着对应于所有实验设备的组件;又例如,在自身运行过程中,实验场景包含着对应于所有实验设备且相互之间搭配在一起的组件以及组件处于工作状态下的动态变化。
由此可知,实验场景是所进行实验模拟的实施对象,所需要模拟的实验不同,所对应实验场景也各不相同。所进行的对应于实验场景的选择,通过执行已有实验场景的选择,或者即时进行实验场景的搭建而获得,在此不进行限定,将根据当前获取实验场景的需求确定。
随着对选择实验场景而触发的操作,终端设备将接收到对应于实验场景的选择,并且随着通过互联网络而实现的连接,服务端也将接收到对应实验场景的选择,进而根据终端设备中对实验场景的选择来返回相应的响应。
若在终端设备触发进行着已有实验场景的选择,则对于接收对应于实验场景选择的服务端而言,将进行为终端设备返回所选择的已有实验场景。
若在终端设备触发进行着组件的选择,以用于实验场景的搭建,此时,可以随着终端设备在组件选择的进行,而在服务端的配合下实现终端设备中所选择组件的绘制,进而在服务端或者终端设备自身作用下实现动态脚本的生成以及组件所对应组件参数的配置。
图4是根据图3对应实施例示出的对步骤310的细节进行描述的流程图。该步骤310,如图4所示,至少包括以下步骤。
在步骤311a中,接收对应于实验场景进行的组件选择以及所选择组件的组件参数配置。
其中,所指的组件选择,是根据所需要搭建的实验场景而在用户的操控下自由选择的,对于所选择加入实验场景的组件,还将进行相应的组件参数配置,以配置组件所对应的具体属性。
如前所述的,组件是虚拟化实验所需要实验设备而获得的,不同的实验设备对应了不同的组件。应当理解,对于所进行对应实验场景的组件选择,通过所触发的操作实现,通过所进行组件相关的点击等选择操作而向实验场景不断添加组件,当然,也可通过所触发进行的拖放等操作而进行组件向实验场景所在显示区域的移动。
无论通过何种方式为实验场景选择组件,都将对所选择组件相应进行组件参数的配置,组件参数作为组件的属性,将使得组件的工作是受控于组件参数的。
例如,在通过Javascript语言而实现的前端页面中,配置有显示区域以及可供配置组件所在的工具栏,工具栏存在着可供选择的各种组件,并且随着触发的交互操作,比如,点击操作、拖动操作等,即可选择所施加交互操作的组件。
在步骤313a中,在显示区域载入所选择组件,并将该组件受控于组件参数。
其中,显示区域是实验场景进行显示所使用的区域,由此,对于所选择组件而言,在触发选择之后,将在显示区域载入,以通过在显示区域的显示而加入到实验场景。
随着对组件进行选择的不断进行,显示区域也将不断进行着所选择组件的载入。如前所述的,对于所选择并载入显示区域的组件而言,也在用户的作用下进行了组件参数的配置,而所配置的组件参数,将作为实验场景的实验参数,各组件都是受控于各自的组件参数,进而在组件参数的设定下工作的。
在一个示例性实施例的具体实现中,显示区域是通过Javascript语言实现的画布,以支持组件的随意选取和即时展示,在画布的作用下,使得对组件所进行的选择是即时的,进而为实验场景在后续所进行的即时演示奠定基础。
图5是根据另一示例性实施例示出的对步骤310的细节进行描述的流程图。该步骤310,如图5所示,至少包括以下步骤。
在步骤311b中,接收对已保存实验场景的选择。
其中,对于已有的实验场景而言,配置了场景保存功能以及在此基础上实现的场景还原功能。场景保存功能用于对已有实验场景的进行保存,而场景还原功能则用于对已保存实验场景执行还原,以重新显示原先所搭建的实验场景。
进一步的,所进行的场景保存是对已有实验场景所对应的实验场景数据执行结构化之后,存储结构化的数据实现的。在一示例性实施例的具体实现中,结构化的数据即为对实验场景所生成的组件脚本。
因此,可对已保存实验触发选择操作,以通过此方式来实现已保存实验场景的调取。
具体的,通过所进行的实验场景预览图像显示,能够通过实验场景预览图像而查看所有已保存实验场景,进而从中确定所选择的已保存实验场景。
所进行对已保存实验场景选择的接收,终端设备将随着操作的触发而接收得到,而进一步的,服务端也将随着终端设备相应发起的已保存实验场景获取请求而接收到对已保存实验场景的选择。
在步骤313b中,根据已保存实验场景获取所对应组件脚本。
其中,随着所做的已保存实验场景选择,而进行所对应组件脚本的获取。组件脚本是搭建甚至于运行实验场景而相应生成的实验场景数据,实验场景数据将以脚本的形式存在,以便于加载。在接收到对已保存实验场景的选择之后,便为此而获取所对应的组件脚本。
组件脚本用于实现实验场景的显示控制,甚至还包括实验场景运行所对应的实验结果显示。具体而言,服务端进行着各种已保存实验场景的组件脚本保存。已保存实验场景的组件脚本以所对应标识信息为索引而进行存储。
随着所发起的服务端访问,在所使用终端设备通过保存的实验场景预览图像而进行着所有已保存实验场景的前端显示,此时,用户可进行所有实验场景预览图像的浏览,并且触发选择操作。
待一实验场景预览图像被触发选择操作之后,便根据所对应的标识信息,例如,所映射课件标识和/或文件标识来发起服务端中组件脚本的查找,以便于获取终端设备所请求实验场景所对应的组件脚本。
在步骤315b中,通过组件脚本的加载在显示区域进行组件绘制,并使绘制的组件受控于组件参数。
其中,终端设备通过对已保存实验场景的选择从本地或者服务端获得相应的组件脚本,由此即可通过执行组件脚本的加载而完成所请求实验场景相关的绘制。
具体而言,组件脚本指示了搭建实验场景所使用的组件以及组件所对应的组件参数,除此之外,在运行此实验场景之后所进行的保存中,还将保存着此实验场景所对应的实验结果,其是由相应模拟计算引擎运行此实验场景而生成的。
因此,与之相对应的,在所进行的组件脚本加载中,必然涉及实验场景中组件的绘制,通过绘制组件而搭建的实验场景,实现实验中实体存在的实验设备的模拟,进而以此构成实验的模拟。
在为实验场景而进行的组件选择中,除了进行所需要组件的选择,还为所选择组件进行着组件参数的设定,即相当于实验参数的设定,由此,对于通过组件脚本加载而绘制的组件,都是受控于存在于组件脚本中的组件参数的。
应当补充说明的是,显示区域是前端显示页面进行实验场景显示所对应的区域,在所部署的前端显示页面中,为便于进行实验场景所相关的编辑以及操作,除了显示区域之外,还配置有工具栏、包含着保存等按钮的操控栏等。
在步骤330中,通过所选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景。
其中,在通过步骤310的执行而在页面完成实验场景的组件绘制之后,需要为所绘制组件完成相互之间的搭配,组件之间的搭配指定了组件之间的相互作用关系,完成了组件搭配的实验场景将是按照组件之间的搭配在运行过程中相互作用,并且受控于组件参数。
组件相互之间搭配的进行,根据选择实现实验场景方式的不同,存在着各不相同的实现过程。具体而言,在一个示例性实施例中,步骤330包括:
根据对应于实验场景的选择,在显示区域完成组件相互之间的搭配,形成所搭建并显示的实验场景。
其中,所指的对应于实验场景的选择,是步骤310中所触发进行的选择,如前所述的,包括对已保存实验场景的选择,以及直接进行的组件选择以及组件参数配置。
具体的,前述步骤330的进一步限定中,即“根据对应于实验场景的选择,在显示区域完成组件相互之间的搭配,形成所搭建并显示的实验场景”步骤,还包括:
根据所触发进行的组件搭配操作,或者所加载组件脚本中指定的组件之间搭配关系,在显示区域进行所载入组件的搭配,获得搭建并显示的实验场景。
对应于实验场景的选择不同,将对应着不同的组件搭配过程。具体而方,在通过进行的组件选择以及组件参数配置完成实验场景中组件的绘制之后,即可随之而在的操作下完成组件之间的搭配,所指的操作,可以是对组件的拖动操作、连接操作等等。
而在通过对已保存实验场景的选择,进行组件脚本加载来完成实验场景中组件的绘制之后,则直接根据组件脚本中指示的搭配关系进行此时的组件搭配,进而完成实验场景的搭建,进行实验场景的显示。
此时,对于需要进行实验模拟的而言,即时获得了对应于实验的实验场景,并且直接运行此实验场景即可获得实验结果以及对实验过程所对应的动态变化进行观察。
在步骤350中,生成所获得实验场景的组件脚本。
其中,通过前述步骤的实现得以完成了实验场景的搭建,随着此实验场景的搭建,也相应生成动态脚本,即所指的组件脚本。组件脚本是随着实验场景的搭建而动态生成的,其是对实验场景所产生数据的结构化处理而获得的。
组件脚本一方面用于为实验场景的运行提供输入数据,另一方面也将为此实验场景的再次调取提供可执行的文件,即得以实现实验场景的保存和还原。
应当进一步明确的,对应于实验场景的组件脚本,指示了实验实验场景而引入的组件以及所对应的位置信息、组件参数等,除此之外,在一个示例性实施例的具体实现中,组件脚本还指示了所模拟的实验名称等实验所相关的信息,在此不一一进行列举。
在步骤370中,根据组件脚本调用模拟计算引擎运行实验场景,进行实验场景的模拟计算。
其中,组件脚本作为实验场景运行的数据输入,而对于实验场景运行则是通过模拟计算引擎实现的。所指的实验场景运行,是指按照所存在的搭配关系以及组件参数,执行实验模拟过程并在所搭建的实验场景呈现实验结果。实验场景的运行是通过模拟计算引擎实现的。模拟计算引擎用于以组件脚本为依据而进行符合实验所对应原理的模拟进行,其中,组件脚本所包含的搭配关系以及组件参数,都成为模拟计算的依据。
在一个示例性实施例的具体实现中,不同类型的实验模拟将对应的不同的模拟计算引擎,因此,需要根据组件脚本所对应的实验模拟类型而进行模拟计算引擎的调用。例如,组件脚本对应的实验模拟类型为化学或者物理,则需要进行化学或者物理所对应模拟计算引擎的调用。
又例如,组件脚本对应的实验模拟类型为直流电路实验,则应当调用直流电路实验所对应的模拟计算引擎,而其它物理实验则调用通用物理引擎即可。
通过模拟计算引擎而进行的实验场景模拟计算,一方面是适应于所搭建实验场景的,另一方面也是与所对应实验原理相符合的。
在步骤390中,通过模拟计算进行实验场景运行中动态变化的显示。
其中,通过调用模拟计算引擎进行模拟计算将获得相应的模拟计算结果,并且模拟计算结果指示着实验场景在模拟实验的过程中存在的动态变化,例如,按照所指定的搭配关系以及组件参数,在组件之间的相互作用,即组件进入工作状态下动态发生的各种变化,其映射了实验中的变化。
至此,随着实验场景运行中动态变化显示的进行,便实现了实验模拟,即实验设备,或者实验器材准备、搭建以及触发实验设备之间相互作用相互影响的模拟,进而得以准确且清晰的实现了实验过程的展现,对于用户而言,能够不受限于时间和空间的进行各种实验,并且也不需要考虑实验设备和实验器材的紧俏与否,能够随时动手做实验,随时参与实验,打破了实际所存在的各种限制条件。
随着具备交互性能的组件引入而进行实验设备、实验器材的模拟,使得实验的进行具备更高的自由度以及高效性,能够根据自由发散的构想而执行各种实验,甚至于危险性较大而难以在实验室完成的实验,都得以通过实验模拟的进行而实现,并且能够具备非常高的还原性能。
除此之外,由于进行着实验场景运行中动态变化的显示,实现了线下,即实际实验中不可见,或者难以观察到的内容的可视化,进而极大的优化了实验效果。
通过如上所述的示例性实施例,将为在线教育实现了动画模拟实验教学工具,即专门实验的进行而开发的在线教学工具,简单实用,让繁琐的实验变得高效、简单,并且支持多终端跨平台访问,例如,电子白板、台式机、笔记本、一体机和平板电脑等。
在另一个示例性实施例中,实验场景是直流电路实验场景,则步骤330还包括:
遍历直流电路实验场景中的所有组件,如果组件上的触点被导线连接,则向导线连接的两个触点分配相同节点标识,使得对应于相同节点标识的触点构成一个节点。
其中,对于模拟计算引擎所进行的模拟计算而言,其是根据实验场景所存在的节点以及指定的搭配关系、组件参数等为依据,遵循所对应的实验原理进行计算的。所指的节点,根据实验场景的不同,而存在着不同的部署。例如,在有的实验场景中,其可为组件本身,而在其它的一些实验场景中,则是根据组件之间的搭配关系进行部署的。
在对应于直流电路实验的直流电路实验场景,将以两个相互搭配的组件之间作为节点,并通过节点标识的分配而进行标记。
所对于直流电路实验场景而言,所标记的节点标识,一方面用于检测组件是否已连通,进而在开关闭合下即可形成电路回路,另一方面则用于执行所对应的模拟计算。
具体而言,对于直流电路实验场景,所引入的组件均为电子元件,例如,电源、电灯、开关、双掷开关、电铃、电阻箱、定值电阻、滑动电阻、电流表和电压表等。为实现各自的导线连接,每一组件上都存在着触点,用于通过导线在触点上的接入而使得组件能够相互连接在一起,进而构成所需要的搭配关系。
当然,导线也是直流电路实验场景中的组件之一,其所具备的两个端部,也将被视为触点而存在。
通过导线所进行的连接,实现直流电路实验场景下组件的搭配。对于每一组件,都检测其触点是否已被导线连接,如果已被导线连接,则对此导线所连接的两个触点分配相同的节点标识,以构成一个节点,以此类推,即可获得直流电路实验场景下的所有节点。
至此,针对于实验场景进行了节点的动态部署,对于服务于模拟计算的节点而言,将得以保证所进行的模拟计算是适应于此实验场景的,针对性强,且得以保证准确性。
与之相对应的,图6是根据图3对应实施例示出的对步骤370的细节进行描述的流程图。该步骤370,如图6所示,至少包括:
在步骤371中,如果直流电路实验场景中所有组件被导线连接且开关闭合形成电路回路,则触发进行组件脚本对应模拟计算引擎的调用。
在步骤373中,通过调用的模拟计算引擎,在直流电路实验中根据节点之间所存在组件的组件参数运算组件所对应的电流和电压。
其中,如前所述的,直流电路实验场景中,针对组件以及组件相互之间的搭配而进行的节点部署,将用于确定所有组件都被导线连接的判断。例如,对于一组件而言,如果分别对应着两个节点,即其所存在的触点均被分配了不同节点标识,则说明这一组件已被导线连接,以此类推,即可确定所有组件是否均已被导线。
对于直流电路实验场景而言,将通过开关的闭合而触发自身的运行。应当理解,开关是直流电路实验场景所存在的组件,而组件是具备交互性能的,因此,将在用户的操控下对所搭建直流电路实验场景触发开关的闭合,此时,即可在模拟计算引擎的作用下,确定组件所形成的直流电路是否处于回路状态,进而随之触发直流电路实验场景的运行。
运行的直流电路实验场景通过模拟计算引擎而对其所部署的节点执行电路回路中电流和电压的运算,而运算所需要依据的数值,例如,电源电源、各组件的电阻等,都记录于所对应的组件参数中。
因此,根据节点之间所存在组件的组件参数进行运算即可。
通过此示例性实施例,为直流电路实验场景实现了模拟计算引擎,并且在此模拟计算引擎的作用下实现了直流电路所相关的模拟计算,为直流电路实验模拟的进行提供了能够简单准确实施的前提条件。
如上所述示例性实施例的实现,即节点的部署以及运算的进行,都是遵循着基尔霍夫定律的,因此,能够保证直流电路实验模拟的准确性。
进一步的,在另一个示例性实施例中,步骤390包括:
根据运算所得到组件对应的电流和电压,控制直流电路实验场景的电路回路上的照明亮度和/或仪表显示。
其中,通过模拟计算引擎而运算得到的电流和电压,是对应于组件的,因此,在电路回路存在着电灯和/或电压表、电流表等仪表时,将由所得到组件对应的电流和电压控制电路回路上的照明亮度和/或仪表显示,以此来实现电路回路上的实验结果输出,进而模拟真实场景下直流电路实验的进行。
图7是根据另一示例性实施例示出的一种实验模拟方法的流程图。该实验模拟方法,在步骤350之后,如图7所示,至少包括以下步骤。
在步骤410中,接收对所显示实验场景的保存选择。
在步骤430中,截取实验场景的图像,为实验场景保存图像和实验场景的组件脚本,该图像用于进行已保存实验场景的预览显示。
其中,在为所搭建实验场景生成组件脚本之后,通过所生成组件脚本就可以实现场景保存功能,即对组件脚本进行保存便是进行着实验场景的保存,此时,这一实验场景便成为已有实验场景。
而进一步的,场景保存为实验场景在后续再次被还原进行的,因此,为便于进行已有实验场景的选择以及触发执行还原,还将对实验场景截图,以随着组件脚本一并进行存储。借助于对实验场景截取图像而获得的图像,能够在后续对已有实验场景进行选择中,提供相应的实验场景预览图像。
至此,通过如上所述的示例性实施例,便为实验模拟的进行提供了可还原的实验场景,获得强了现实场景中实验所不具备的还原性能,能够随时进行实验效果的演示。
以直流电路实验的模拟为例,进行上述实验模拟方法的详细阐述。首先应当明确的是,本发明所实现的动画模拟实验教学工具通过所包含的前端绘制模块、实验引擎模块、服务端模块三大部分实现实验模拟,进而通过所具备的交互性能使得用户能够随意搭建实验场景,并且能够在完成实验场景搭建之后进行即时演示。
具体而言,在前端绘制模块的作用下,为用户提供可供进行实验科目选择的网页页面,例如,在此网页页面上选择“物理-直流电路虚拟实验”,此时,将跳转进入实验场景的搭建和运行页面。
此页面配置有工具栏,工具栏包括各种各样模拟直流电路实验而对应于电子元件的组件,以供用户选择。
用户在工具栏中选择要实验的组件,并且根据所需要设置的实验参数而向所选择的组件设置组件参数。随着用户所进行的组件选择,将在页面的显示区域进行所选择组件的绘制,例如,图8是根据一示例性实施例示出的组件以及组件之间搭配示意图,通过进行电源、电灯、开关的选择而在显示区域进行相应绘制,并且相互之间通过导线相连接。显示区域可为画布的形式,以便于进行组件的绘制。
又例如,图9是根据图8对应实施例示出的对组件进行组件参数配置的示意图。通过对灯泡所进行的组件参数配置,而将灯泡的电阻配置为10欧姆,电流配置为2安,由此,所绘制的组件在形态上模拟了对应的电子元件,所配置的组件参数则从内在上,例如,属性和功能模拟了电子元件,进而保证电子元件虚拟化的精准性和逼真性。
用户不断进行着组件的选择,并且通过导线将在显示区域将绘制的组件连接在一起,便完成了组件的选择和搭配,形成电路,进而获得直流电路实验场景,并生成相应的Javascript脚本,即前述所指的直流电路脚本。
通过Javascript脚本启动直流电路引擎来计算电路是否形成回路,并计算出各组件的电流和电压。
对于直流电路引擎的实现,将通过所需要进行的电流和电压运算进行进一步的阐述。
直流电路引擎,即前述所指的对应于直流电路实验场景的模拟计算引擎,将首先遍历画布上所有组件,检查每个组件的触点是否被导线。
如果组件的触点被导线连接,则给导线所连接的两个触点都重新分配相同的节点标识,如果组件的触点没有被导线连接,则不分配节点标识,以出现组件中触点没有节点标识的情况。
进一步的,所进行的节点标识分配,针对于具体的组件,例如,单刀单掷开关、单刀双掷开关、滑动变阻器,所对应的节点标识分配过程如下所述:
(1)如果组件是单刀单掷开关,即有两个触点,则需要判断其开关状态,如果开关是闭合的,则把组件的两个触点同步为相同的节点标识。
(2)如果组件是单刀双掷开关,有三个触点,即触点A,触点B和触点C,则先判断触点A和触点B是否接上导线并且开关左右闭合,如果有,则对触点A和触点B分配相同的节点标识,再判断触点B和触点C是否接上导线且左右闭合,如果有,则对触点B和触点C分配相同的节点标识。
(3)如果组件是滑动变阻器,有四个触点,即触点A、触点B、触点C和触点D,则先判断触点A和触点B是否有导线,如果有,则向触点A和触点B分配相同节点标识,再判断滑动变阻器的两端电阻是否有一端存在零电阻的情况,如果有,则给零电阻的一端触点C或者触点B分配和触点A或触点B相同的节点标识,即将零电阻视作导线直接连接。
由此,将相同节点标识的触点视为一个节点。
当开关闭合时,构成闭合回路,进行电压和电流的计算。具体的,如果开关断开,则开关两端为两个节点,如果开关闭合,则开关两端的两个节点合并为一个节点。
进行电路合并,并判断出所有电源,按电源顺序对每个节点编号,例如,图10是根据一示例性实施例示出的电流回路示意图。图10所示的电流回路中,导线连接了两个或者两个以上的组件,以构成节点,每个节点都具有相应属性,例如,“电势”,分别是u1、u2和u3。
根据节点的个数n建立n*n的矩阵和一个n行的列向量,如图10所示有3个节点,则相应获得以下矩阵:
3*3矩阵:
Figure GDA0001691192960000161
列向量:
Figure GDA0001691192960000162
其中,α31表示节点3和节点1之间所有电阻的倒数之和:
Figure GDA0001691192960000163
α32表示节点3和节点2之间的电阻倒数之和:即
Figure GDA0001691192960000164
ann即a33,表示连接着节点3的所有电阻的倒数之和取反数,即:
Figure GDA0001691192960000165
变换矩阵,得到
Figure GDA0001691192960000171
其中ε表示电池电压。
此时,根据电路中组件的电阻和电池电压,建立以下方程组,即:
Figure GDA0001691192960000172
求解上述方程组,得到
Figure GDA0001691192960000173
求得每个节点的电势后,每个组件的电压等于两端的电势差。
最终,对于服务端模块的实现,如下述描述:
当用户选择保存实验场景后,则在javascript脚本的作用下,对画布截图,为此实验场景生成结构化的数据,组织成特定的数据格式,即前述所指的组件脚本,其也是javascript脚本的形式。
将截图所获得的图像和数据一并发送到服务端保存。在用户下次打开时,能够通过ajax拉取对应的数据,以还原实验场景。
所存储于服务端的数据,如下述表1所示,即:
Figure GDA0001691192960000174
表1
由此,将通过Javascript脚本实现实验的模拟,在此基础上进行多终端跨平台的访问。
图11是根据一示例性实施例示出的实验模拟的实现示意图。在通过网页页面实现的课件平台上,随着在画布上执行的实验场景新建步骤,如步骤610所示的,进行着组件的随意选取和搭配,即执行步骤620,并且在模拟计算引擎作用下,运行组件所搭建的实验场景,并通过步骤630的执行而将实验结果返回课件平台。
另外,也可以在课件平台上通过进行的实验场景编辑,如步骤650,向服务端拉取数据,即执行步骤660,以获得组件脚本,所拉取数据也将在模拟计算引擎作用下相应执行步骤630,向课件平台返回实验结果。
图12是根据图8对应实施例示出的所模拟实验中组件被错误连接的示意图。应当理解,组件正如实体存在的元件,将在用户操控下,例如,用户的拖动、连接而随意摆放以及构建相互之间的连接关系,以保证即便是虚拟环境也能够自由执行实验。
如图12所示的,用户在图8所对应实验场景下,进一步执行实验,即在图8所构建的组件之间搭配关系基础上,额外构建另一搭配关系,即新增连接线,由此,在路线上可见的,将造成电源短路,而灯泡并未点亮,进而甚至于烧掉电源,并为此而模拟相应的显示效果,由此,对于用户而言,能够进一步深化理解所进行的实验,但却不需要付出由此而带来的元件损耗,极大的增强了安全性能。
图13是根据图8对应实施例示出的所模拟实验中电压过大而使得灯泡烧坏的示意图。组件“灯泡”将随着电压的增加而不断增大发热量,进而最终导致钨丝断开,灯泡烧坏。
具体的,如图13所示的,随着电压作用于灯泡上电压的增加,钨丝逐步升温,例如,在达到2000摄氏度时开始发热,2000摄氏度之后发光,进而使得灯泡点亮,此时,图13所示出的灯泡便被点亮,控制其显示出灯泡被点亮的显示效果。
此时,随着电压的继续增加,在钨丝的温度达到3000摄氏度之后,钨丝开始蒸发气化,并达到一定程度之后断开,发生灯泡被烧坏的情况,即如图13中放大显示的灯泡,此灯泡中的钨丝已经断开,并且不再点亮。
由此,便在所进行的实验模拟中进行灯泡被烧坏的消息提示,以便于用户即便是进行实验模拟也能够真实还原实验本应当具有的情况,极大的增强了实验模拟的逼真性。
图14是根据一示例性实施例示出的一种实验模拟方法的流程图。该实验模块方法,在一个示例性实施例中,如图14所示,至少包括以下步骤。
在步骤510中,在显示区域绘制实验模拟所使用的组件,绘制的组件受控于组件参数。
其中,随着对所需要进行实验模拟而进行的组件选择,或者选择已保存实验场景的重新打开,无论是何种选择的触发,都为显示区域进行了所使用组件的选取,进而即可在显示区域中进行着组件的绘制。
应当理解,显示区域中绘制的组件,是实现实验而对应的各种元件。作为实体而存在的元件,都有着自己的特性。而与之相对应的,对于每一组件,也都应当有其属性,即通过数字化的属性而为组件赋予应当有的特性。
组件所对应的属性,是通过组件参数的形式存在的,以此来映射到组件所具备的特性中,进而在这一组件所对应组件参数的作用下控制组件的工作。
在步骤530中,构建所绘制组件之间的搭配,获得显示区域中实验场景的显示。
在步骤550中,运行实验场景,在实验场景的运行中显示组件之间的配合工作。
其中,在选择运行实验场景时,通过模拟计算引擎的调用以及模拟计算,获得组件之间模拟自身工作过程而对应的模拟计算结果,进而在此基础上应用所运算得到的模拟计算结果显示组件之间的配合工作过程。
在步骤570中,在组件之间的配合工作中对作用于组件上的变化进行动态显示。
其中,所指的作用于组件上的变化,是组件之间配合工作过程中每一组件所应当发生的变化,其是对应于实体元件的工作过程的。将在所运行得到模拟计算结果的控制下实现组件各自动态变化的显示。
图15是根据图14对应实施例示出的对步骤510的细节进行描述的流程图。在一个示例性实施例中,该步骤510,如图15所示,至少包括以下步骤。
在步骤511中,根据组件选择或已保存实验场景选择,进行显示区域中实验模拟所使用组件的绘制,获得显示区域中组件的分布。
其中,显示区域中组件的分布,是通过组件绘制得到,其指示了所配备的组件,甚至于组件的摆放位置等,用于真实模拟实验的搭建过程。
在步骤513中,配置显示区域分布的组件受控于对应的组件参数。
图16是根据图14对应实施例示出的对步骤550的细节进行描述的流程图。该步骤550,如图16所示,在一个示例性实施例中,至少包括以下步骤。
在步骤551中,根据实验场景以及实验场景中组件受控的组件参数进行模拟计算,响应对实验场景的运行选择,获得组件之间配合工作的模拟计算结果。
在步骤553中,按照模拟计算结果控制显示组件之间配合工作的过程。
应当理解,实验场景中选择运行,将是通过模拟计算引擎的调用,以及基于各组件参数、组件之间的搭配关系而进行的模拟计算来响应的。根据模拟计算结果来进行所运行实验场景中组件之间配合工作的过程显示。
下述为本发明装置实施例,用于执行本发明上述实验模拟方法方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明实验模拟方法方法实施例。
图17是根据一示例性实施例示出的一种实验模拟装置的框图。该实验模拟装置,如图17所示,至少包括:选择接收模块710、场景获得模块730、脚本生成模块750、运行模块770和动态显示模块790。
选择接收模块710,用于接收对应于实验场景的选择。
场景获得模块730,用于通过所选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景。
脚本生成模块750,用于生成所获得实验场景的组件脚本。
运行模块770,用于根据组件脚本调用模拟计算引擎运行实验场景,进行实验场景的模拟计算。
动态显示模块790,用于通过模拟计算进行实验场景运行中动态变化的显示。
图18是根据图17对应实施例示出的对选择接收模块的细节进行描述的框图。该选择接收模块710,如图18所示,包括但不限于:组件选择单元711a和组件载入单元713a。
组件选择单元711a,用于接收对应于实验场景进行的组件选择以及所选择组件的组件参数配置.
组件载入单元713a,用于在显示区域载入所选择组件,并将组件受控于组件参数。
图19是根据图17对应实施例示出的对选择接收模块的细节进行描述的框图。该选择接收模块710,如图19所示,包括但不限于:场景选择单元711b、脚本获取单元713b和绘制单元715b。
场景选择单元711b,用于接收对已保存实验场景的选择。
脚本获取单元713b,用于根据已保存实验场景获取所对应组件脚本。
绘制单元715b,用于通过组件脚本的加载在显示区域进行组件绘制,并使绘制的组件受控于组件参数。
在另一个示例性实施例中,场景获得模块730进一步用于根据对应于实验场景的选择,在显示区域完成组件相互之间的搭配,形成所搭建并显示的实验场景。
在另一个示例性实施例中,场景获得模块730还用于根据所触发进行的组件搭配操作,或者所加载组件脚本中指定的组件之间搭配关系,在显示区域进行所载入组件的搭配,获得搭建并显示的实验场景。
在另一个示例性实施例中,实验场景是直流电路实验场景,场景获得模块还用于遍历直流电路实验场景中的所有组件,如果组件上的触点被导线连接,则向导线连接的两个触点分配相同节点标识,使得对应于相同节点标识的触点构成一个节点。
图20是根据图17对应实施例示出的对运行模块的细节进行描述的框图。该运行模块770,如图20所示,至少包括引擎调用单元771和模拟运算单元773。
引擎调用单元771,用于如果直流电路实验场景中所有组件被导线连接且开关闭合形成电路回路,则触发进行组件脚本对应模拟计算引擎的调用。
模拟运算单元773,用于通过调用的模拟计算引擎,在直流电路实验场景中根据节点之间所存在组件的组件参数运算组件所对应的电流和电压。
在另一个示例性实施例中,动态显示模块790进一步用于根据运算所得到组件对应的电流和电压,控制直流电路实验场景的电路回路上的照明亮度和/或仪表显示。
图21是根据另一示例性实施例示出的实验模拟装置的框图。该实验模块装置如图21所示,还包括:保存选择接收模块810和场景保存模块830。
保存选择接收模块810,用于接收对所显示实验场景的保存选择。
场景保存模块830,用于截取实验场景的图像,为实验场景存储图像和实验场景的组件脚本,图像用于进行已保存实验场景的预览显示。
图22是根据另一示例性实施例示出的一种实验模拟装置的框图。在另一个示例性实施例中,如图22所示,该实验模拟装置,包括但不限于:组件绘制模块910、搭配构建模块930、运行模块950和组件变化显示模块970。
组件绘制模块910,用于在显示区域绘制实验模拟所使用的组件,绘制的组件受控于组件参数。
搭配构建模块930,用于构建所绘制组件之间的搭配,获得显示区域中实验场景的显示。
运行模块950,用于运行实验场景,在实验场景的运行中显示组件之间的配合工作。
组件变化显示模块970,用于在组件之间的配合工作中对作用于组件上的变化进行动态显示。
图23是根据图22对应实施例示出的对组件绘制模块的细节进行描述的框图。该组件绘制模块910,如图23所示,包括但不限于:选择单元911和组件受控配置单元913。
选择单元911,用于根据组件选择或已保存实验场景选择,进行显示区域中实验模拟所使用组件的绘制,获得显示区域中组件的分布。
组件受控配置单元913,用于配置显示区域分布的组件受控于对应的组件参数。
图24是根据图22对应实施例示出的对运行模块的细节进行描述的框图。该运行模块950,如图24所示,包括但不限于:运行响应单元951和工作过程显示单元953。
运行响应单元951,用于根据实验场景以及实验场景中组件受控的组件参数进行模拟计算,响应对实验场景的运行选择,获得组件之间配合工作的模拟计算结果。
工作过程显示单元953,用于按照模拟计算结果控制显示组件之间配合工作的过程。
可选的,本发明还提供一种电子设备,该电子设备可以用于图1所示实施环境中,执行图3、图4、图5、图6、图7、图14、图15和图16任一所示的方法的全部或者部分步骤。所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行实现前述所指的方法。
该实施例中的装置的处理器执行操作的具体方式已经在有关前述实施例中执行了详细描述,此处将不做详细阐述说明。
在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读存储介质,例如可以为包括指令的临时性和非临时性计算机可读存储介质。该存储介质例如包括指令的存储器204,上述指令可由装置200的处理器218执行以完成上述方法。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (10)

1.一种实验模拟方法,其特征在于,所述方法包括:
接收对应于实验场景的选择;
通过所选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景,所述实验场景包括直流电路实验场景,所述通过所述选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景的步骤包括:
遍历所述直流电路实验场景中的所有组件,如果组件上的触点被导线连接,则向所述导线连接的两个触点分配相同节点标识,使得对应于相同节点标识的触点构成一个节点;
如果遍历的所述组件是单刀单掷开关、单刀双掷开关和滑动变阻器中的任意一种,对单刀单掷开关和单刀双掷开关接上导线且闭合的触点分配相同节点标识,对滑动变阻器上零电阻的触点分配相同节点标识,将相同节点标识的触点视为一个节点,标记的所述节点标识用于检测所述组件是否连通形成回路,以及执行所对应的模拟计算;
生成所获得实验场景的组件脚本,生成的所述组件脚本是对实验场景数据执行结构化之后存储得到的,所述组件脚本作为所述实验场景运行的数据输入,也为所述实验场景的再次调取提供可执行的文件,实现所述实验场景的保存和还原;
根据所述组件脚本调用模拟计算引擎运行所述实验场景,进行所述实验场景的模拟计算;对所述直流电路实验场景,所述根据所述组件脚本调用模拟计算引擎运行所述实验场景,进行所述实验场景的模拟计算的步骤包括:
通过所述组件脚本启动直流电路引擎来根据所标记的节点标识计算电路是否形成回路;
如果所述直流电路实验场景中所有组件被导线连接且开关闭合形成电路回路,则通过调用的所述直流电路引擎,在所述直流电路实验场景中根据节点之间所存在组件的组件参数运算组件所对应的电流和电压;
通过所述模拟计算进行所述实验场景运行中动态变化的显示。
2.根据权利要求1所述的方法,其特征在于,所述接收对应于实验场景的选择,包括:
接收对应于实验场景进行的组件选择以及所选择组件的组件参数配置;
在显示区域载入所选择组件,并将所述组件受控于所述组件参数。
3.根据权利要求1所述的方法,其特征在于,所述接收对应于实验场景的选择,包括:
接收对已保存实验场景的选择;
根据所述已保存实验场景获取所对应组件脚本;
通过所述组件脚本的加载在显示区域进行组件绘制,并使绘制的所述组件受控于所述组件参数。
4.根据权利要求1所述的方法,其特征在于,所述通过所述模拟计算进行所述实验场景运行中动态变化的显示,包括:
根据运算所得到组件对应的电流和电压,控制所述直流电路实验场景的电路回路上的照明亮度和/或仪表显示。
5.根据权利要求1所述的方法,其特征在于,所述生成所获得实验场景的组件脚本之后,所述方法还包括:
接收对所显示实验场景的保存选择;
截取所述实验场景的图像,为所述实验场景存储所述图像和所述实验场景的组件脚本,所述图像用于进行已保存实验场景的预览显示。
6.一种实验模拟方法,其特征在于,所述方法包括:
在显示区域绘制实验模拟所使用的组件,绘制的所述组件受控于组件参数;
构建所绘制组件之间的搭配,获得所述显示区域中实验场景的显示,所述实验场景包括直流电路实验场景,通过选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景的步骤包括:
遍历所述直流电路实验场景中的所有组件,如果组件上的触点被导线连接,则向所述导线连接的两个触点分配相同节点标识,使得对应于相同节点标识的触点构成一个节点;
如果遍历的所述组件是单刀单掷开关、单刀双掷开关和滑动变阻器中的任意一种,对单刀单掷开关和单刀双掷开关接上导线且闭合的触点分配相同节点标识,对滑动变阻器上零电阻的触点分配相同节点标识,将相同节点标识的触点视为一个节点,标记的所述节点标识用于检测所述组件是否连通形成回路,以及执行所对应的模拟计算;
生成所获得实验场景的组件脚本,生成的所述组件脚本是对实验场景数据执行结构化之后存储得到的,所述组件脚本作为所述实验场景运行的数据输入,也为所述实验场景的再次调取提供可执行的文件,实现所述实验场景的保存和还原;
运行所述实验场景,在所述实验场景的运行中显示所述组件之间的配合工作;
对所述直流电路实验场景,运行所述实验场景的步骤包括:
通过所述组件脚本启动直流电路引擎来根据所标记的节点标识计算电路是否形成回路;
如果所述直流电路实验场景中所有组件被导线连接且开关闭合形成电路回路,则通过调用的所述直流电路引擎,在所述直流电路实验场景中根据节点之间所存在组件的组件参数运算组件所对应的电流和电压,获得所述组件之间配合工作的模拟计算结果;
按照所述模拟计算结果控制显示所述组件之间配合工作的过程;
在所述组件之间的配合工作中对作用于组件上的变化进行动态显示。
7.根据权利要求6所述的方法,其特征在于,所述在显示区域绘制实验模拟所使用的组件,包括:
根据组件选择或已保存实验场景选择,进行显示区域中实验模拟所使用组件的绘制,获得显示区域中组件的分布;
配置所述显示区域分布的组件受控于对应的组件参数。
8.一种实验模拟装置,其特征在于,所述装置包括:
选择接收模块,用于接收对应于实验场景的选择;
场景获得模块,用于通过所选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景,所述实验场景包括直流电路实验场景,所述通过所述选择实验场景对应组件相互之间的搭配,获得受控于相应组件参数的实验场景的执行包括:
遍历所述直流电路实验场景中的所有组件,如果组件上的触点被导线连接,则向所述导线连接的两个触点分配相同节点标识,使得对应于相同节点标识的触点构成一个节点;
如果遍历的所述组件是单刀单掷开关、单刀双掷开关和滑动变阻器中的任意一种,对单刀单掷开关和单刀双掷开关接上导线且闭合的触点分配相同节点标识,对滑动变阻器上零电阻的触点分配相同节点标识,将相同节点标识的触点视为一个节点,标记的所述节点标识用于检测所述组件是否连通形成回路,以及执行所对应的模拟计算;
脚本生成模块,用于生成所获得实验场景的组件脚本,生成的所述组件脚本是对实验场景数据执行结构化之后存储得到的,所述组件脚本作为所述实验场景运行的数据输入,也为所述实验场景的再次调取提供可执行的文件,实现所述实验场景的保存和还原;
运行模块,用于根据所述组件脚本调用模拟计算引擎运行所述实验场景,进行所述实验场景的模拟计算;对所述直流电路实验场景,所述根据所述组件脚本调用模拟计算引擎运行所述实验场景,进行所述实验场景的模拟计算的执行包括:
通过所述组件脚本启动直流电路引擎来根据所标记的节点标识计算电路是否形成回路;
如果所述直流电路实验场景中所有组件被导线连接且开关闭合形成电路回路,则通过调用的所述直流电路引擎,在所述直流电路实验场景中根据节点之间所存在组件的组件参数运算组件所对应的电流和电压;
动态显示模块,用于通过所述模拟计算进行所述实验场景运行中动态变化的显示。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现根据权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1至7中任一项所述的方法。
CN201810027505.5A 2018-01-11 2018-01-11 实验模拟方法、装置、电子设备和计算机可读存储介质 Active CN110032361B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810027505.5A CN110032361B (zh) 2018-01-11 2018-01-11 实验模拟方法、装置、电子设备和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810027505.5A CN110032361B (zh) 2018-01-11 2018-01-11 实验模拟方法、装置、电子设备和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN110032361A CN110032361A (zh) 2019-07-19
CN110032361B true CN110032361B (zh) 2022-05-24

Family

ID=67234325

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810027505.5A Active CN110032361B (zh) 2018-01-11 2018-01-11 实验模拟方法、装置、电子设备和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110032361B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111862966A (zh) * 2019-08-22 2020-10-30 马上消费金融股份有限公司 智能语音交互方法以及相关装置
CN111027858A (zh) * 2019-12-10 2020-04-17 珠海读书郎网络教育有限公司 一种基于智能识别的在线平板学习质量监控方法
CN111897461A (zh) * 2020-07-09 2020-11-06 北京国发天元信息技术有限公司 一种基于互联网的互动虚拟实验的实现方法
CN112182891A (zh) * 2020-09-30 2021-01-05 深圳市智物联网络有限公司 一种工业对象模拟方法、装置及设备
CN113570925B (zh) * 2021-07-19 2023-12-15 华中师范大学 一种可组装的虚实融合实验电路的计算方法及系统
CN113538187A (zh) * 2021-07-23 2021-10-22 北京高途云集教育科技有限公司 一种实验的实施方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104064088A (zh) * 2014-06-24 2014-09-24 北京亚泰盛世科技发展有限公司 具有动态响应的仿真实验系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010051861A1 (en) * 2000-06-09 2001-12-13 Fujitsu Limited Method and apparatus for simulation, and a computer product
AU2002365280A1 (en) * 2001-08-13 2003-07-24 Late Night Labs Ltd. System and method for simulating laboratory experiment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104064088A (zh) * 2014-06-24 2014-09-24 北京亚泰盛世科技发展有限公司 具有动态响应的仿真实验系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"NB物理实验操作手册(简化版)";admin;《公开网址:http://help.nobook.com.cn/index.php?m=book&f=read&articleID=117》;20160909;第1-6页 *
"NB物理实验操作手册(简化版)";admin;《公开网址:http://help.nobook.com.cn/index.php?m=book&f=read&articleID=118》;20160721;第1-7页 *
"NB物理实验操作手册";admin;《公开网址:http://help.nobook.com.cn/index.php?m=book&f=read&articleID=148》;20161017;第1-4页 *

Also Published As

Publication number Publication date
CN110032361A (zh) 2019-07-19

Similar Documents

Publication Publication Date Title
CN110032361B (zh) 实验模拟方法、装置、电子设备和计算机可读存储介质
US10572101B2 (en) Cross-platform multi-modal virtual collaboration and holographic maps
JP6671483B2 (ja) スマートデバイスを制御するための方法および装置、ならびにコンピュータ記憶媒体
CN107870672B (zh) 虚拟现实场景实现菜单面板的方法、装置和可读存储介质
CN105955888B (zh) 一种页面调试预览方法及系统
CN109324857B (zh) 一种用户引导实现方法、装置和存储介质
CN104123383B (zh) 一种在媒体应用中使用的方法及装置
CN113268226A (zh) 页面数据生成方法、装置、存储介质及设备
CN109685872B (zh) 动画生成方法、装置、设备及计算机可读存储介质
CN105867754B (zh) 应用界面处理方法及装置
CN113253880B (zh) 互动场景的页面的处理方法、装置及存储介质
CN110780598B (zh) 一种智能设备控制方法、装置、电子设备及可读存储介质
US20170185422A1 (en) Method and system for generating and controlling composite user interface control
CN109840201B (zh) Ui测试方法、装置、电子设备及计算机可读存储介质
CN102622233A (zh) 自动生成适应于某交互终端设备用户界面的系统及方法
KR20150079387A (ko) 카메라 광 데이터로 가상 환경을 조명하는 방법
CN109783144B (zh) 虚拟环境交互实现中变量的处理方法、装置和存储介质
CN110879676A (zh) 调试控制方法、主控设备、调试服务器、被控设备及系统
CN107529095A (zh) 一种视频拼接方法及装置
CN116628791A (zh) 灯具安装引导方法、装置、设备及介质
CN114268802B (zh) 虚拟空间展示方法、装置、电子设备及存储介质
CN109783748A (zh) 显示字段的显示方法、装置、设备及可读存储介质
CN111135557B (zh) 用于多屏的交互方法和装置
CN103647994A (zh) 一种网络数据资源的传输方法和装置
CN114035725A (zh) 超声设备的教学方法、装置、超声成像设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant