Mr Guo 发表于 2023-2-2 17:04:21

基于行空板的科学探究 | 吃起来酸的东西就是酸性食物吗

本次科学探究实验由:分布在祖国四地的四位老师以线上合作的方式共同完成,是一种全新的团队合作尝试,他们分别是:

江曼老师杨丽萌老师温良老师   郭力老师

课程背景
“食物的酸碱性”是人教版高中化学选修1第一册第二章“促进身心健康”的第1节内容。本节内容将食物酸碱性与日常生活饮食相联系,具有趣味性和实用性。食物的酸碱性和化学上溶液的酸碱性不同,对人体有着重要的生理意义。酸碱平衡是人体重要的平衡因素之一,对身体健康和各个器官的正常运行起着重要作用。但人体的自身调控能力有限,我们在日常饮食中摄入酸碱性食物,通过选择不同的食物来维系人体酸碱平衡,保持体内的生理平衡。



本节课联系生活实际,以问题“吃起来酸的东西就是酸性食物吗”为导向,以柠檬汁为实验对象,对比分析柠檬汁在人体内代谢前后的酸碱性,引导学生将化学和日常生活联系,参与提出问题、实验论证、得出结论的探究过程,深刻体会化学与生活的紧密联系,激发学生的好奇心和对化学的学习兴趣。学生结合学习的酸碱性知识,通过自制的实验装置、Gravity模拟PH计等进行实验探究,将信息技术与化学学科融合,通过实验探究认识酸碱性食物的主要性质,了解食物对身体的作用,知道酸碱性食物对人体健康的影响,明白为什么要倡导人们均衡营养,合理膳食。



课前准备
教师准备:使用行空板、模拟PH传感器、SCI采集模块、数据线、泡沫、激光切割椴木板制作实验架台等,准备实验物品有人工胃液、人工肠液、酸碱滴定管、大小烧杯、酒精灯、柠檬。



实验目的

[*]
1. 通过体外模拟胃肠消化来模拟柠檬汁在胃肠道的消化过程,测定模拟胃肠消化过程中柠檬汁酸碱度的变化,对比分析柠檬汁在人体内代谢前后的酸碱性,理解食物酸碱性的定义。
[*]
2. 了解Gravity模拟PH传感器的使用,学习用行空板、SCI采集模块数字化信息系统获得数据并处理实验数据的方法。
[*]
3. 认识食物酸碱性的生理意义,培养学生用科学方法验证解决问题的意识,将化学知识融入生活,定制健康食谱。

实验依据

[*]
1. 含钾、钠、钙、镁等金属元素较多的物质,在人体内代谢后生成碱性,使体液呈弱碱性。这类食物在生理上称为碱性食物,习惯上称为碱性食物。
[*]
2. 柠檬主要含柠檬酸等碳水化合物和钾盐,碳水化合物在小肠被分解为葡萄糖,葡萄糖经过线粒体被彻底氧化,释放出能量,钾盐最终被人体吸收。

探究思路

[*]
1. 将柠檬去皮、去籽,切成碎片,榨成柠檬汁,检测并记录柠檬汁的初始PH值作为空白对照组。
[*]
2. 模拟柠檬汁在人工胃液、人工肠液的消化,定期取消化后的柠檬汁,检测其消化一段时间后的PH值,作为实验组。

探究过程制作实验装置
根据使用仪器的尺寸设计合适的实验架台



用激光切割机加工出来,进行组装,如下图所示。



硬件连接及测试
将传感器与行空板连接,编写简单测试程序进行测试后,按照实验要求将它们正确地连接在一起,如图。



编写程序

[*]
1. 在柠檬汁中分别加入人工胃液和肠液,需要晃动烧杯使溶液进行充分混合,因此我们在烧杯底座处设置了转盘,转盘程序的编写使用的编程软件为mind+。


[*]
2. 加入人工胃肠液测试PH值的程序,其编程软件为Arduino IDE,具体程序如下。
1. #include "DFRobot_PH.h"
2. #include <EEPROM.h>
3.
4. #define PH_PIN A1
5. float voltage,phValue,temperature = 25;
6. DFRobot_PH ph;
7.
8. void setup()
9. {
10.   Serial.begin(115200);
11.   ph.begin();
12. }
13.
14. void loop()
15. {
16.   static unsigned long timepoint = millis();
17.   if(millis()-timepoint>1000U){                  //time interval: 1s
18.       timepoint = millis();
19.       //temperature = readTemperature();         // read your temperature sensor to execute temperature compensation
20.       voltage = analogRead(PH_PIN)/1024.0*5000;// read the voltage
21.       phValue = ph.readPH(voltage,temperature);// convert voltage to pH with temperature compensation
22.       Serial.print("temperature:");
23.       Serial.print(temperature,1);
24.       Serial.print("^CpH:");
25.       Serial.println(phValue,2);
26.   }
27.   ph.calibration(voltage,temperature);         // calibration process by Serail CMD
28. }
29.
30. float readTemperature()
31. {
32.   //add your code here to get the temperature from your temperature sensor
33. }

柠檬汁PH值数据分析
本实验中对模拟消化前后柠檬汁PH值的探究思路为:

[*]
先将柠檬汁与人工胃液进行配比,模拟胃消化,在此期间定时记录消化过程中柠檬汁的PH值,和模拟胃消化前的柠檬汁PH值进行比对;
[*]
在胃消化稳定后,将模拟胃消化后的柠檬汁放入人工肠液中,进行体外模拟肠消化,同时定时记录此期间柠檬汁的PH值,将其与胃消化结束、肠消化开始的柠檬汁进行PH值变化对比。对柠檬汁进行人工胃液肠液体外消化的PH值数据可以定时取液看溶液的PH值,也可以用SCI采集模块实时监测。
模拟胃液消化组

[*]
1. 胃液消化对照组:100ml柠檬汁的原始PH值。
[*]
2. 模拟胃液消化组:100ml柠檬汁加入5ml人工胃液,用泡沫将量杯包好避光,放在摇动装置上进行消化,在模拟消化过程中使用SCI采集模块实时记录胃液消化柠檬汁的PH,得到的数据见表1。
[*]


模拟肠液消化组

[*]
1. 肠液消化对照组:经本次实验观察,模拟胃液消化组的柠檬汁PH是在胃消化30min后趋于稳定值,取经胃液消化30min后PH稳定的柠檬汁作为肠液消化对照组。
[*]
2. 模拟肠液消化组:105ml柠檬汁经过模拟胃液消化30min后结束胃消化阶段,作为模拟肠液消化的0h,测量记录此时的PH值,加入20ml模拟肠液。用泡沫将量杯包好避光,放在摇动装置上进行持续消化,在模拟消化过程中使用SCI采集模块实时记录肠液消化柠檬汁的PH值,得到的数据见表2。



兴致勃勃地看到这里,你心中是否留有疑问:这实验结果是不是有误?明明查阅资料柠檬是碱性食物,可实验结果却是PH值6.9<7,显酸性。我们和你有同样的疑问,难道实验失败了?别着急,接着往下看,我们便开始查找资料得知,人工胃液和人工肠液自身的PH值偏酸性,并且其含有的消化酶很少,因此不能和柠檬汁发生充分的体外消化;此外,溶液的温度对实验也会有影响,在专业的体外消化中会用到恒温水浴的装置。由于现有条件的限制,我们重新寻找新的实验方法来验证柠檬是否为碱性食物。

测试柠檬燃烧后PH实验过程
通过查阅资料,食物的酸碱性可根据食物完全燃烧后产生的灰分溶于水后溶液的酸碱性划分,酸性食品是指食品灰分溶于水后溶液呈酸性的食物,碱性食品是指食品灰分溶于水后溶液呈碱性的食物。于是,我们决定用柠檬片煅烧成灰的方法替代柠檬在体内消化代谢的过程。
将柠檬切成片晒干


使用酒精灯加热柠檬片烧成柠檬灰,将柠檬灰放入烧杯中倒入少量水,测得柠檬灰粉末液的PH值为5.02




将柠檬灰粉末液进行过滤,得到过滤后的柠檬灰水溶液


把烧杯置于恒温水中,然后加入过滤后的柠檬灰水溶液,使用SCI采集模块实时记录溶液的PH值编写监测溶液PH值数据的程序:1. from dfrobot_rp2040_suab import *
2. from pinpong.board import Board,Pin
3. from pinpong.board import DS18B20
4. from unihiker import GUI   #导入包
5. import time
6.   
7. gui=GUI()#实例化GUI类
8. Board().begin()
9. ds_PIN = Pin(Pin.D24)
10. ds1 = DS18B20(ds_PIN)
11. SCI1 = DFRobot_SUAB_IIC(addr=0x21)
12. while SCI1.begin() != 0:
13.   print("Initialization Sensor Universal Adapter Board failed.")
14.   time.sleep(1)
15. print("Initialization Sensor Universal Adapter Board done.")
16.   
17. x_max = 240
18. y_max = 320
19. gui.draw_text(x=60, y=20, text='柠檬灰水溶液检测')
20. gui.draw_text(x=0, y=80, text='PH:')
21. gui.draw_text(x=0, y=120, text='水温:')
22.
23. t1 = gui.draw_text(x=90, y=80, text='0')
24. t2 = gui.draw_text(x=100, y=120, text='0')
25. t3 = gui.draw_text(x=20, y=260, text='')
26.   
27. while True:
28.   print("SCI数据读取:")
29.      
30.   PH_Water = SCI1.get_value1(SCI1.eAD,"PH_Water").strip()
31.   PH_unit = SCI1.get_unit1(SCI1.eAD,"PH_Water").strip()
32.   print("PH:%s %s" % (PH_Water, PH_unit))
33.   t1.config(text = "%s" % PH_Water)
34.
35.   temp_c = ds1.temp_c()
36.   t2.config(text = "%s℃" % temp_c)
37.   t3.config(text = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
38.   print("") 柠檬灰水溶液PH值数据采集


结合行空板和python可视化,我们可以方便地实现将实时的酸碱度变化曲线显示在屏幕上(见下图),便于我们及时掌握实验进展的状态。



1. from dfrobot_rp2040_suab import *
2. from pinpong.board import Board,Pin
3. from pinpong.board import DS18B20
4. from unihiker import GUI   #导入包
5. import time
6. import numpy as np
7. from matplotlib import pyplot as plt
8. from matplotlib.animation import FuncAnimation
9. import matplotlib.animation as animation
10. import random
11. import datetime as dt
12.
13. gui=GUI()#实例化GUI类
14. Board().begin()
15. SCI1 = DFRobot_SUAB_IIC(addr=0x21)
16. while SCI1.begin() != 0:
17.   print("Initialization Sensor Universal Adapter Board failed.")
18.   time.sleep(1)
19. print("Initialization Sensor Universal Adapter Board done.")
20.
21. plt.style.use('seaborn-pastel')#   修改图标样式,可以使用print(plt.style.available) 打印样式列表
22. fig = plt.figure()#创建图像fig
23. ax = fig.add_subplot(1, 1, 1) #增加1x1子图
24. #创建两个列表对应折线图的x、y轴数据
25. xs = []
26. ys = []
27. a = 0
28.
29. #定义动画函数
30. def animate(i, xs, ys):
31.   PH_Water = SCI1.get_value1(SCI1.eAD,"PH_Water").strip()
32.   xs.append(dt.datetime.now().strftime('%H:%M:%S'))#x轴显示时间戳,时分秒
33.   ys.append(PH_Water)#y轴显示PH值
34.   # 限定xs和ys列表数据范围
35.   xs = xs[-20:]
36.   ys = ys[-20:]
37.   # 根据xs,ys绘制折线
38.   ax.clear()
39.   ax.plot(xs, ys)
40.   plt.xticks(rotation=90, ha='right')#坐标数值倾斜45°,数据沿x轴正无穷方向偏移
41.   plt.subplots_adjust(left=0.20,bottom=0.20)#限制图标的区域边界
42.   plt.title('lemon water PH')#图标标题
43. #调用animation方法,对象:画布fig,动画函数:animate,函数调用数值:(xs, ys),数据更新频率interval=1000 ms
44. #ani = animation.FuncAnimation(fig, animate, fargs=(xs, ys), interval=1000)
45. ani = animation.FuncAnimation(fig=fig,
46.                               func=animate,
47.                               fargs=(xs, ys),
48.                               frames=100,
49.                               #init_func=init,
50.                               interval=1000,
51.                               blit=False)
52. #画布显示
53. plt.show()


收集到加入柠檬灰水溶液的PH值见上述csv文件截图,实验数据表明在恒温水中加入柠檬灰水溶液后,由最初的PH值5.6变到8.1左右。由此实验数据可以看出,柠檬切片晒干烧成灰,加入水制作柠檬灰浸泡液,过滤浸泡液得到柠檬灰水溶液,将其放入恒温水中,经过一段时间反应后的PH值是8.08>7,呈碱性。

反思
为什么模拟胃肠液消化柠檬实验数据有问题?做化学实验本身是一件非常严谨的事情,要考虑到实验的各个方面,在本实验中要注意:

[*]
1. 模拟体外消化就要考虑到人的肠胃液温度是36-37℃,实验过程中溶液要一直处于恒温状态;
[*]
2. 人在消化过程中肠胃要蠕动,所以要有振动装置实现这一效果;
[*]
3. 人的肠胃液中会分泌各种酶促进食物的消化,而人工肠胃液中酶的含量比较少,不能很好地使柠檬汁和肠胃液充分发生反应。这些都是有可能导致实验数据有误的影响因素。

这也让我们明白了要想做好一个实验,一定要提前查阅各种资料,列出可能的影响因素和问题,并在条件允许的情况下一一解决,而且在真正做实验之前可以先拿PH试纸测试混合好溶液的PH值,这样有了前期的测试数据作为依据更容易开展后续的实验。

结论
根据实验验证了食物的酸碱性与食物本身测出来的PH值大小没有直接关系,原来吃起来酸的东西未必就是酸性食物,酸酸的柠檬就是碱性物质。我们人体体液的PH值为7.35-7.45之间,超过这个范围人体就会处于亚健康状态,我们吃入的食物分为酸性食物和碱性食物,所以在日常生活饮食中,大家要保持健康的饮食习惯,进行合理搭配,均衡膳食,通过食物的选择来控制体内的酸碱平衡。

参考文章:

[*]
1. 柑橘在体外模拟胃肠消化过程中总多酚、总黄酮及总抗氧化活性的变化规律.从彦丽,彭梦雪,刘冬,孙海燕,唐旭蔚.食品科学,2016,37(17):96-103
[*]
2. 信息技术与物理学科深度融合案例用单摆测量重力加速度.作者:云天
[*]
3. 信息技术与物理学科融合案例测量小车的平均速度.作者:安卓机器人



三春牛-创客 发表于 2023-2-2 21:12:46

厉害厉害

三春牛-创客 发表于 2023-2-2 21:13:50

学习了,感谢分享!

怀若谷 发表于 2023-2-2 22:10:44

这个模式好,跨学科项目有团队来做是最优解

花生编程 发表于 2023-2-3 08:22:30

厉害厉害{:6_215:}

花生编程 发表于 2023-2-3 08:23:31

来学习了!

木子呢 发表于 2023-2-3 10:54:34

怀若谷 发表于 2023-2-2 22:10
这个模式好,跨学科项目有团队来做是最优解

非常赞同!

木子呢 发表于 2023-2-3 10:54:51

牛啊牛啊

aYYSW8AepLLd 发表于 2023-2-4 17:06:24

厉害厉害

腿毛利小五郎 发表于 2023-2-7 08:48:42

很具有教育意义,感谢分享
页: [1]
查看完整版本: 基于行空板的科学探究 | 吃起来酸的东西就是酸性食物吗