当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘 要:介绍了用电导法测定乙酸解离常数的实验原理和步骤,给出了用计算机对电导法测定乙酸解离常数的实验数据 进行处理的软件设计方法,同时给出了用Visual FoxPro 6.0编写电导法测定乙酸解离常数的处理软件的基本结构和部分程 序代码。

引言

高校实验是传授知识和技能、训练科学思维和方法、培 养科学精神和品德、全面实施高等教育的重要环节,在高等 教育中起着无法替代的作用。物理化学实验是一门独立的基 础实验课程。随着电子技术、计算机技术在高等教育中的应用, 高校的物理化学研究已经渗透到自然科学的各个领域,并派 生了许多与物理化学相关的交叉学科,因此,物理化学实验 是通往现代科学研究的桥梁。物理化学实验的主要目的是使 学生初步了解物理化学的研究方法与技能,学会重要的物理化 学性能测定,熟悉物理化学实验现象的观察和记录、实验条 件的判断和选择、实验数据的测量和处理、实验结果的分析 和归纳等一整套实验方法,加深对物理化学基本理论的理解, 培养学生严谨认真、实事求是的科学态度和作风以及解决实 际化学问题的能力。

为此,本文给出了如何用Visual FoxPro 6.0软件来编写 电导法测定乙酸解离常数的具体方法。

1弱电解质电离常数的测定

1.1测定原理

一般情况下,当AB型弱电解质在溶液中的电离达到平 衡时,电离平衡常数Kc与原始浓度C和电离度a有以下关系:

(1)

由于在一定温度下,Kc是常数,因此,可以通过测定AB 型弱电解质在不同浓度时的a值来通过式(1)求出Kc。

醋酸溶液的电离度可用电导法来测定。一般情况下,将 电解质溶液注入电导池内,溶液电导G的大小与两电极之间 的距离/成反比,与电极的面积A成正比:

G=kA/1(2)

式中,A〃为电导池常数,以Ke”表示;为电导率。其物理意 义表示在两平行且相距1 m,面积均为1 m2的两电极间,电 解质溶液的电导,其单位以S • m-1表示。

由于电极的/和A不易精确测量,因此,实验中可用一 种已知电导率值的溶液,先求出电导池常数Kce,„然后把待测 溶液注入该电导池,测出其电导值,再根据式Q)求出其电导率。

溶液的摩尔电导率是把含有1Q电解质的溶液置于相距 为1 m的两平行板电极之间的电导。通常以&表示,单位为 S • m2 • mol-1^摩尔电导率与电导率的关系为:

TOC \o "1-5" \h \z

/Km

以CAm对1/Am作图,其直线的斜率为(K3)2Kc。这样, 若已知Km值,就可求得Kc。

1.2实验步骤

基于上述原理,所确定的实验步骤如下:

调整恒温槽温度为25.0笆±0.3 °C。

用洗净、烘干的叉形管1支,加入20 mL的0.1 mol/ L醋酸溶液,测其电导率。

⑶用吸取醋酸的移液管从电导池中吸出10 mL溶液弃去, 用另一支液管取10 mL电导水注入电导池,混合均匀,等温 度恒定后,测其电导率。如此操作,共稀释四次。

(4)倒去醋酸,洗净电导池,然后用电导水淋洗。最后注 入20 mL电导水,测其电导率。

2软件设计

2.1软件开发工具的选择

本软件使用 Visual FoxPro 6.0 开发制作。Visual FoxPro

6.0是一个强大的Windows平台开发工具,具有面向对象编 程的特点和可视化的编程方法,Visual FoxPro 6.0可提供对象 和事件处理模式,并可利用面向对象编程(OOP)的特点,使用 户不用加入太多代码,就可方便地写出具有模拟操作系统功能 的、标准的Windows程序。Visual FoxPro 6.0是以关系模型 为基础的、功能强大的数据库管理系统(DBMS),它能够迅 速而简单地建立用户的数据库,从而方便地使用和管理数据。

Visual FoxPro 6.0是自含型数据库管理系统,是解释型和编译 型混合的系统,可以解释方式定义并操纵数据库,也可以将 操作过程编写为程序进行编译,然后脱离系统直接运行,由 它生成的软件,小巧灵活,使用方便,占用内存小[6]。

2.2系统功能

本系统主要具有以下几方面的功能:

2.2.1实验选项信息的输入、修改与保存

本系统可以随时方便地输入、修改实验选项信息。由于 实验结果会受到环境的影响,因此,需要客观准确地保存室温、 大气压、实验时间、所用仪器编号等实验选项信息,以方便 以后的数据分析。

2.2.2实验数据的输入、计算、保存与显示

本系统可以方便地输入测定的实验数据,并精确地计算 和明确地显示。本文的实验过程需要测定乙酸的电导率、水 的电导率等数据,由于这些数据通常都以科学计数法表示, 输入比较困难,同时,这些数据都比较小(在10-5左右),而 计算的结果可能会达到10-10左右,这就给数据的输入、计算、 保存、显示都提出了很高的要求。

2.2.3实验数据的输出与读取

本系统对于测定的实验数据可随时方便地保存与读取。 此实验需要测定的数据较多,实验用时较长,对实验数据方 便的保存与读取将会让实验过程变得简单、轻松,减少不必 要的重复,同时也保证了数据的准确性。

2.2.4实验结果的显示

通过本系统可以快速计算出实验结果并显示。通过结果 的显示,有利于发现误差较大的数据,并及时修改。

2.2.5实验报告单的输出

本系统可以方便、快速地生成专业的实验报告单。记录 实验者、实验温度、室温、实验时间、所用仪器,实验结果 等与实验相关的所有信息,并对实验数据进行统计处理。

2.3关键程序设计及说明

根据以上实验需求,本系统可由实验选项信息输入、实 验数据输入、实验结果显示、实验报告单输出等四大模块组成。 2.3.1实验数据的输入与计算程序

由于实验中测定的数据是以科学计数法表示的,为了方 便、快速输入,本设计采用文本框加微调按钮的方式输入。 而对于显示,由于在计算机中用科学计数法表示的数字将保 留15位有效数字,不利于查看,因此,本系统将计算的结果 四舍五入保留4位有效数字后转化成文本类型,以便于观察。 具体代码如下:

**以下是输入数据验证程序

if thisform.spinner1.value>100 or thisform.spinner1.

value<0

messagebox(" 您输入的 温度 数值不正确,请检查

更改!",0+16," 错误提示 ")

thisform.spinner1.setfocus

return 0

endif

if thisform.text3.value<=0

messagebox(" 您输入的 乙酸溶液浓度 数值不正确,

请检查更改!",0+16," 错误提示 ")

thisform.text3.setfocus

return 0

endif

if thisform.text2.value<0

messagebox(" 您输入的 电导水电导率 数值不正确,

请检查更改!",0+16," 错误提示 ")

thisform.text2.setfocus

return 0

endif

if thisform.text2.value=0

P=messagebox(" 您输入的 电导水电导率为 0 ,是否

继续?",4+32+256," 提示信息 ")

if p=7

thisform.text2.setfocus

return 0

endif

endif

if thisform.text1.value<0

messagebox(" 您输入的 原溶液电导率 数值不正确,

请检查更改!",0+16," 错误提示 ")

thisform.text1.setfocus

return 0

endif

if thisform.text1.value=0

p=messagebox(" 您输入的 原 溶液电导率为 0 ,是

否继续?",4+32+256," 提示信息 ")

if p=7

thisform.text1.setfocus

return 0

endif

endif

if thisform.text4.value<0

messagebox(" 您输入的 第 一 次稀释溶液电导率 数

值不正确,请检查更改!",0+16," 错误提示 ")

thisform.text4.setfocus

return 0

endif

if thisform.text4.value=0

p=messagebox(" 您输入的 第 一 次稀释溶液电导率

为 0 ,是否继续?",4+32+256," 提示信息 ")

if p=7

thisform.text4.setfocus

return 0

endif

endif

if thisform.text5.value<0

messagebox(" 您输入的 第 二 次稀释溶液电导率 数

值不正确,请检查更改!",0+16," 错误提示 ")

thisform.text5.setfocus

return 0

endif

if thisform.text5.value=0

p=messagebox(" 您输入的 第 二 次稀释溶液电导率

为 0 ,是否继续?",4+32+256," 提示信息 ")

if p=7

thisform.text5.setfocus

return 0

endif

endif

if thisform.text6.value<0

messagebox(" 您输入的 第 三 次稀释溶液电导率 数

值不正确,请检查更改!",0+16," 错误提示 ")

thisform.text6.setfocus

return 0

endif

if thisform.text6.value=0

p=messagebox(" 您输入的 第 三 次稀释溶液电导率

为 0 ,是否继续?",4+32+256," 提示信息 ")

if p=7

thisform.text6.setfocus

return 0

endif

endif

if thisform.text7.value<0

messagebox(" 您输入的 第 四 次稀释溶液电导率 数

值不正确,请检查更改!",0+16," 错误提示 ")

thisform.text7.setfocus

return 0

endif

if thisform.text7.value=0

p=messagebox(" 您输入的 第 四 次稀释溶液电导率

为 0 ,是否继续?",4+32+256," 提示信息 ")

if p=7

thisform.text7.setfocus

return 0

endif

endif

if thisform.text1.value=0 and thisform.text4.value=0 and

thisform.text5.value=0 and thisform.text5.value=0 and thisform.

text7.value=0

messagebox(" 您没有输入任何电导率数据,请重新

输入!",0+16," 错误提示 ")

thisform.text1.setfocus

return 0

endif

2.3.2 实验数据输出程序

为了方便随时保存实验数据,本设计制作了实验数据

保存表单,可将实验数据保存到任意路径。具体代码如下:

“输出数据”按钮的单击事件代码如下:

** 以下检测试验数据有效性

do case

case thisform.spinner1.value>100 or thisform.spinner1.

value<0

messagebox(" 您输入的 温度 数值不正确,请检查

更改!",0+16," 错误提示 ")

thisform.spinner1.setfocus

return 0

case thisform.text3.value<=0

messagebox(" 您输入的 乙酸溶液浓度 数值不正

确,请检查更改!",0+16," 错误提示 ")

thisform.text3.setfocus

return 0

case thisform.text2.value<0

messagebox(" 您输入的 电导水电导率 数值不正

确,请检查更改!",0+16," 错误提示 ")

thisform.text2.setfocus

return 0

case thisform.text1.value<0

messagebox(" 您输入的 原溶液电导率 数值不正

确,请检查更改!",0+16," 错误提示 ")

thisform.text1.setfocus

return 0

case thisform.text4.value<0

messagebox(" 您输入的 第一次稀释溶液电导率 数

值不正确,请检查更改!",0+16," 错误提示 ")

thisform.text4.setfocus

return 0

case thisform.text5.value<0

messagebox(" 您输入的 第二次稀释溶液电导率 数

值不正确,请检查更改!",0+16," 错误提示 ")

thisform.text5.setfocus

return 0

case thisform.text6.value<0

messagebox(" 您输入的 第三次稀释溶液电导率 数

值不正确,请检查更改!",0+16," 错误提示 ")

thisform.text6.setfocus

return 0

case thisform.text7.value<0

messagebox(" 您输入的 第四次稀释溶液电导率 数

值不正确,请检查更改!",0+16," 错误提示 ")

thisform.text7.setfocus

return 0

case thisform.text1.value=0 and thisform.text4.value=0

and thisform.text5.value=0 and thisform.text5.value=0 and

thisform.text7.value=0

messagebox(" 您没有输入任何电导率数据,请重新

输入!",0+16," 错误提示 ")

thisform.text1.setfocus

return 0

OTHERWISE

&& 以下是文件路径选择和命名

do form save

&& 以下是用输入的名称在制定的路径生成数据文件

if not empty(wjlj)

creat dbf ("&wjlj") ; && 此处的 " " 不可省略

(SPINNER1 n(4,2),;

TEXT3 n(8,4),;

TEXT2 N (5,4),;

SPINNER3 i,;

text1 n(8,4),;

spinner2 i,;

text4 n(8,4),;

spinner4 i,;

text5 n(8,4),;

spinner5 i,;

text6 n(8,4),;

spinner6 i,;

text7 n(8,4),;

spinner7 i )

&& 以下是数据保存

insert into "&wjlj" values (thisform.spinner1.value,; &&

此处的“”不可省略

thisform.text3.value,;

thisform.text2.value,;

thisform.spinner3.value,;

thisform.text1.value,;

thisform.spinner2.value,;

thisform.text4.value,;

thisform.spinner4.value,;

thisform.text5.value,;

thisform.spinner5.value,;

thisform.text6.value,;

thisform.spinner6.value,;

thisform.text7.value,;

thisform.spinner7.value)

use

messagebox(" 数据保存成功 ! ",0+64," 提示信息 ")

else

messagebox(" 您的数据尚未保存! ",0+48," 提示信息 ")

endif

endcase

“数据保存”表单的“路径选择”按钮单击事件代码如下:

cdir=getdir()

if empty(cdir)

thisform.text2.value="mainp"+"\DATA\"

else

thisform.text2.value=cdir

endif

thisform.command3.setfocus

thisform.refresh

“数据保存”表单的“保存”按钮单击事件代码 [7] 如下:

if empty(alltrim(thisform.text1.value))

messagebox(" 请输入文件名称!",0+16," 错误提示 ")

thisform.text1.setfocus

return 0

endif

cdir=thisform.text2.value

cdirfile="cdir+alltrim(thisform.text1.value)"

public wjlj

wjlj=(&cdirfile)

thisform.release

2.3.3 实验数据读取程序

为了方便数据输入,本设计还制作了实验数据读取表

单,以随时方便地从任意位置读取以前保存的试验数据。具

体代码 [8] 如下:

“读取数据”按钮的单击事件代码如下:

do form read

** 以下是数据查询

if empty(dqlj)

messagebox(" 没有可读取的数据! ",0+48," 提示信

息 ")

else

** 定义数组 temp1

dimension temp1(1)

SELECT *;

FROM "&dqlj"; && 此处的 "" 不可省略

inTO array temp1

if alen(temp1)<>14

messagebox(" 您选取的数据文件错误! ",0+16," 错

误提示 ")

else

** 以下是数据显示

thisform.spinner1.value=temp1(1)

thisform.text3.value=temp1(2)

thisform.text2.value=temp1(3)

thisform.spinner3.value=temp1(4)

thisform.text1.value=temp1(5)

thisform.spinner2.value=temp1(6)

thisform.text4.value=temp1(7)

thisform.spinner4.value=temp1(8)

thisform.text5.value=temp1(9)

thisform.spinner5.value=temp1(10)

thisform.text6.value=temp1(11)

thisform.spinner6.value=temp1(12)

thisform.text7.value=temp1(13)

thisform.spinner7.value=temp1(14)

THISFORM.refresh

messagebox(" 数据读取成功! ",0+64," 提示信息")

endif

endif

“读取数据”表单的“路径选择”按钮单击事件代码如下:

if curdir()<>"mainp"+"\DATA\"

CD &MAINP.+"\DATA\"

endif

cdir=getfile(" 数据文件 :dbf"," 数据文件名 :","",0," 选择文

件 ")

if empty(cdir)

thisform.command3.enabled=.f.

thisform.command2.setfocus

else

thisform.text1.value=cdir

thisform.command3.enabled=.t.

thisform.command3.setfocus

endif

cd ..

thisform.refresh

2.4系统界面设计与使用方法

为了更好地记录实验进行的过程,系统中也设计了实验 选项表单,可以进行实验者、室温、气压等信息的输入,这 样有助于后边生成详细的实验报告单。在以上工作都完成后, 即可通过“打印结果”按钮打印出实验报告单。

3结语

本系统是为物化实验“电导法测定乙酸解离度”量身定 做的,可与实验过程紧密配合,并可对实验数据进行快捷精 确处理,而且能迅速生成专业化的实验报告单,不用人工进 行任何工作就可直接得到实验结果。

实验过程中所得数据大多为科学计数法表示的数字,难 以输入,而本系统采用底数、指数分别输入的方式,因而使得 数据的输入变得简单有趣。

利用本系统,在整个实验过程中,只需要输入实验中测 定的电导率数据,就可以得到最终的实验结果并生成实验报 告单,整个处理过程不需要任何人工干预,简单快捷。实验 完成后,可快速得到专业详尽的实验报告单,实验报告单包含 实验时间、气压、所用仪器编号、实验人员等信息,同时省略 了对实验数据的处理。

20210916_6142cbd91a354__电导法测定乙酸解离常数实验数据处理软件设计

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭