This commit is contained in:
2025-08-31 14:37:41 +08:00
16 changed files with 1765 additions and 882 deletions

View File

@@ -272,10 +272,32 @@
<!-- 示例3 -->
<div class="bg-white dark:bg-gray-800 rounded-xl overflow-hidden shadow-lg transition-all duration-300 hover:shadow-xl group">
<div class="relative overflow-hidden">
<img src="https://picsum.photos/id/20/600/600" alt="示例图像" class="w-full aspect-square object-cover transition-transform duration-500 group-hover:scale-110">
<img src="https://pic2.zhimg.com/v2-e0e9ae420ce9536b9d5a31308c843483_1440w.jpg" alt="示例图像" class="w-full aspect-square object-cover transition-transform duration-500 group-hover:scale-110">
<div class="absolute inset-0 bg-gradient-to-t from-black/70 to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-end">
<div class="p-4 text-white">
<p class="font-medium text-sm truncate">未来城市,赛博朋克风格</p>
<p class="font-medium text-sm truncate">一张写有「山高水长,风清月明」的水墨画,搭配山川、竹林和飞鸟,文字清晰自然,风格一致</p>
</div>
</div>
</div>
</div>
<!-- 示例4 -->
<div class="bg-white dark:bg-gray-800 rounded-xl overflow-hidden shadow-lg transition-all duration-300 hover:shadow-xl group">
<div class="relative overflow-hidden">
<img src="https://pic1.zhimg.com/v2-f964d7744d4bcf808003ce64bd913482_1440w.jpg" alt="示例图像" class="w-full aspect-square object-cover transition-transform duration-500 group-hover:scale-110">
<div class="absolute inset-0 bg-gradient-to-t from-black/70 to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-end">
<div class="p-4 text-white">
<p class="font-medium text-sm truncate">一位身着淡雅水粉色交领襦裙的年轻女子背对镜头而坐,俯身专注地手持毛笔在素白宣纸上书写“通義千問”四个遒劲汉字。古色古香的室内陈设典雅考究,案头错落摆放着青瓷茶盏与鎏金香炉,一缕熏香轻盈升腾;柔和光线洒落肩头,勾勒出她衣裙的柔美质感与专注神情,仿佛凝固了一段宁静温润的旧时光。</p>
</div>
</div>
</div>
</div>
<!-- 示例5 -->
<div class="bg-white dark:bg-gray-800 rounded-xl overflow-hidden shadow-lg transition-all duration-300 hover:shadow-xl group">
<div class="relative overflow-hidden">
<img src="https://pica.zhimg.com/v2-982a735ace0bbc83ad7ed67c700a183c_1440w.jpg" alt="示例图像" class="w-full aspect-square object-cover transition-transform duration-500 group-hover:scale-110">
<div class="absolute inset-0 bg-gradient-to-t from-black/70 to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-end">
<div class="p-4 text-white">
<p class="font-medium text-sm truncate">一个咖啡店门口有一个黑板,上面写着 AI 咖啡2元一杯旁边有个霓虹灯写着开源中国旁边有个海报海报上面是一个中国美女海报下方写着 Gitee AI。</p>
</div>
</div>
</div>

View File

@@ -109,14 +109,6 @@
</style>
</head>
<body>
<div class="model-selector">
<label for="model-select">选择学伴:</label>
<select id="model-select">
<option value="shizuku">小智</option>
<option value="koharu">小荷</option>
<option value="wanko">汪喵</option>
</select>
</div>
<div class="recording-indicator" id="recordingIndicator">
<div class="recording-dot"></div>
@@ -191,286 +183,5 @@
<option value="wanko">汪喵</option>
</select>
</div>
// 模型配置 - 使用与Sample.html相同的CDN链接
const models = {
shizuku: { jsonPath: "https://unpkg.com/live2d-widget-model-shizuku@1.0.5/assets/shizuku.model.json", name: "小智" },
koharu: { jsonPath: "https://unpkg.com/live2d-widget-model-koharu@1.0.5/assets/koharu.model.json", name: "小荷" },
wanko: { jsonPath: "https://unpkg.com/live2d-widget-model-wanko@1.0.5/assets/wanko.model.json", name: "汪喵" }
};
// 录音相关变量
let mediaRecorder; let audioChunks = []; let isRecording = false;
// 音频播放相关变量
let audioElement = null; let isPlaying = false;
// 获取URL参数
function getUrlParam(name) {
const reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)');
const r = window.location.search.substr(1).match(reg);
return r ? unescape(r[2]) : null;
}
// 开始录音
function startRecording() {
if (isRecording) return;
console.log("尝试开始录音");
navigator.mediaDevices.getUserMedia({ audio: true })
.then(stream => {
mediaRecorder = new MediaRecorder(stream);
audioChunks = [];
mediaRecorder.ondataavailable = event => {
if (event.data.size > 0) audioChunks.push(event.data);
};
mediaRecorder.onstop = () => {
const audioBlob = new Blob(audioChunks, { type: 'audio/wav' });
console.log("录音完成,音频数据大小:", audioBlob.size);
const audioUrl = URL.createObjectURL(audioBlob);
console.log("录音URL:", audioUrl);
// 这里可以调用ASR服务
uploadAudioToServer(audioBlob);
};
mediaRecorder.start();
isRecording = true;
document.getElementById('recordingIndicator').style.display = 'flex';
document.getElementById('startRecordBtn').style.display = 'none';
document.getElementById('stopRecordBtn').style.display = 'flex';
console.log("开始录音成功");
// 设置最长录音时间为60秒
setTimeout(stopRecording, 60000);
})
.catch(error => {
console.error("获取麦克风权限失败:", error);
alert("请授权麦克风权限以使用录音功能");
});
}
// 停止录音
function stopRecording() {
if (!isRecording || !mediaRecorder) return;
mediaRecorder.stop();
isRecording = false;
document.getElementById('recordingIndicator').style.display = 'none';
document.getElementById('startRecordBtn').style.display = 'flex';
document.getElementById('stopRecordBtn').style.display = 'none';
console.log("停止录音");
if (mediaRecorder.stream) {
mediaRecorder.stream.getTracks().forEach(track => track.stop());
}
}
// 上传音频到服务器
function uploadAudioToServer(audioBlob) {
console.log("开始上传音频到服务器");
// 显示思考中动画
document.getElementById('thinkingIndicator').style.display = 'flex';
const formData = new FormData();
formData.append('file', audioBlob, 'recording.wav');
fetch('/api/xueban/upload-audio', {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('服务器响应错误');
}
return response.json();
})
.then(data => {
console.log("处理结果:", data);
// 隐藏思考中动画
document.getElementById('thinkingIndicator').style.display = 'none';
if (data.success) {
showResults(data.data);
} else {
alert('音频处理失败: ' + data.message);
}
})
.catch(error => {
console.error("上传音频失败:", error);
// 隐藏思考中动画
document.getElementById('thinkingIndicator').style.display = 'none';
alert('上传音频失败: ' + error.message);
});
}
// 显示ASR识别结果和反馈
function showResults(data) {
// 更新结果显示容器
const resultContainer = document.getElementById('resultContainer');
resultContainer.style.display = 'flex';
// 显示ASR结果
document.getElementById('asrResultText').textContent = data.asr_text || '未识别到内容';
// 显示反馈文本
document.getElementById('feedbackResultText').textContent = data.feedback_text || '无反馈内容';
// 准备音频播放
if (data.audio_url) {
if (audioElement) {
audioElement.pause();
audioElement = null;
}
audioElement = new Audio(data.audio_url);
audioElement.onloadedmetadata = function() {
updateAudioTimeDisplay();
// 音频加载完成后自动播放
try {
audioElement.play();
isPlaying = true;
updatePlayButton();
} catch (e) {
console.error("自动播放失败:", e);
}
// 无论自动播放是否成功,都显示播放按钮
document.getElementById('playAudioBtn').style.display = 'flex';
};
audioElement.ontimeupdate = function() {
updateAudioProgress();
updateAudioTimeDisplay();
};
audioElement.onended = function() {
isPlaying = false;
updatePlayButton();
};
// 绑定播放按钮事件
document.getElementById('playAudioBtn').onclick = togglePlayAudio;
// 绑定进度条点击事件
document.getElementById('audioProgress').onclick = function(e) {
if (!audioElement) return;
const progressBar = document.getElementById('audioProgress');
const rect = progressBar.getBoundingClientRect();
const clickPosition = (e.clientX - rect.left) / rect.width;
audioElement.currentTime = clickPosition * audioElement.duration;
};
}
}
// 切换音频播放/暂停
function togglePlayAudio() {
if (!audioElement) return;
if (isPlaying) {
audioElement.pause();
} else {
audioElement.play();
}
isPlaying = !isPlaying;
updatePlayButton();
}
// 更新播放按钮状态
function updatePlayButton() {
const playButton = document.getElementById('playAudioBtn');
if (isPlaying) {
playButton.innerHTML = `
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6 19H10V5H6V19ZM14 19H18V5H14V19Z" fill="white"/>
</svg>
`;
} else {
playButton.innerHTML = `
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 5V19L19 12L8 5Z" fill="white"/>
</svg>
`;
}
}
// 更新音频进度条
function updateAudioProgress() {
if (!audioElement || !audioElement.duration) return;
const progress = (audioElement.currentTime / audioElement.duration) * 100;
document.getElementById('progressBar').style.width = `${progress}%`;
}
// 更新音频时间显示
function updateAudioTimeDisplay() {
if (!audioElement || !audioElement.duration) return;
const currentTime = formatTime(audioElement.currentTime);
const duration = formatTime(audioElement.duration);
document.getElementById('audioTime').textContent = `${currentTime} / ${duration}`;
}
// 格式化时间为 MM:SS
function formatTime(seconds) {
const mins = Math.floor(seconds / 60);
const secs = Math.floor(seconds % 60);
return `${mins.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;
}
// 初始化看板娘 - 简化为Sample.html的工作版本
function initL2Dwidget() {
const modelId = getUrlParam('id') || 'koharu';
const model = models[modelId] || models.koharu;
document.getElementById('model-select').value = modelId;
console.log('加载模型:', model.name, model.jsonPath);
// 初始化模型 - 与Sample.html相同的配置
L2Dwidget.init({
"model": { "jsonPath": model.jsonPath, "scale": 1 },
"display": {
"position": "right",
"width": 150,
"height": 300,
"hOffset": 0, // 重置水平偏移
"vOffset": -20 // 重置垂直偏移
},
"mobile": { "show": true, "scale": 0.5 },
"react": { "opacityDefault": 0.8, "opacityOnHover": 1 },
"dialog": { "enable": true, "script": {
'tap body': `你好啊,我是${model.name}。`,
'tap face': '有什么问题或者烦心事都可以和我聊聊~'
}}
});
}
// 页面加载完成后初始化
window.onload = function() {
// 直接初始化看板娘,不添加额外延迟
initL2Dwidget();
// 监听下拉框变化使用独立JS暴露的接口
document.getElementById('model-select').addEventListener('change', function() {
window.switchL2DModel(this.value);
});
// 绑定录音按钮事件
document.getElementById('startRecordBtn').addEventListener('click', startRecording);
document.getElementById('stopRecordBtn').addEventListener('click', stopRecording);
// 页面加载时请求麦克风权限
navigator.mediaDevices.getUserMedia({ audio: true })
.then(stream => {
console.log("麦克风权限已授予");
// 立即停止流,只获取权限
stream.getTracks().forEach(track => track.stop());
})
.catch(error => {
console.error("获取麦克风权限失败:", error);
alert("请授权麦克风权限以使用录音功能");
});
};
</body>
</html>

View File

@@ -1,67 +1,14 @@
### 代数式与整式复习资料 一、代数式 1. 代数式的概念
由数和字母用运算符号连接所成的式子称为代数式。特别的,单独的一个数或一个字母也是代数式。
2. 代数式的书写规则
- 如果式子中出现了乘号,通常写作点或者省略不写。
- 数字与字母相乘时,常把数字放在字母的前面。
- 如果出现了除法,通常写成分数的形式。 3. 列代数式示例
- 某瓜子的单价为16元每千克购买N千克16N元。
- 1500米跑步测试某同学跑完全程的成绩是T秒平均速度1500/T 米每秒。
- 练习本单价1元圆珠笔单价2元买A本练习本和B支圆珠笔的总价A + 2B 元(带单位的相加或相减式子要用括号括起来)。 4. 代数式的值
一般的,用数值来代替代数式中的字母,按照代数式中的运算关系,计算得出的结果,称为代数式的值。
5. 代数式求值方法
- 直接代入法例如当A=2B=-1C=-30时求B²-4AC的值直接代入计算得25。
- 整体代入法例如若A²+2A-1=0求2A²+4A-1的值可由A²+2A=1整体代入得2×1-1=1。 二、整式 1. 整式的相关概念
- 整式:单项式和多项式统称为整式。
- 单项式:由数和字母的乘积组成的代数式,单独的一个数或者一个字母也是单项式。
- 单项式的次数:所有字母的指数和。
- 单项式的系数:单项式中的数字因数(注意负号)。
- 多项式:几个单项式的和。
- 多项式的项:多项式中的每个单项式,不含字母的项叫做常数项。
- 多项式的次数:多项式里次数最高项的次数。 2. 整式的加减运算
- 同类项:所含字母相同,并且相同字母的指数也相同的项。
- 合并同类项法则:系数相加减,字母和字母的指数保持不变。
- 去括号法则:括号前是正号,去掉括号后各项不变号;括号前是负号,去掉括号后各项都变号。 3. 整式的乘法运算
- 幂的运算:
- 同底数幂相乘底数不变指数相加a^m · a^n = a^(m+n))。
- 幂的乘方:底数不变,指数相乘((a^m)^n = a^(mn))。
- 积的乘方:各因式分别乘方,再把所得的幂相乘((ab)^n = a^n b^n
- 单项式与单项式相乘:系数、相同字母的幂分别相乘,单独的字母连同指数作为积的因式。
- 单项式与多项式相乘用单项式去乘多项式中的每一项m(a+b+c) = ma+mb+mc
- 多项式与多项式相乘:用一个多项式中的每一项分别乘以另一个多项式中的每一项((m+n)(a+b) = ma+mb+na+nb。 4. 乘法公式
- 平方差公式:两数的和乘以这两数的差等于两数的平方差((a+b)(a-b) = a²-b²
- 完全平方公式:两数的和(或差)的完全平方等于两数的平方和加上(或减去)它们乘积的二倍((a±b)² = a²±2ab+b²
- 常见恒等变换a²+b² = (a+b)²-2ab = (a-b)²+2ab(a+b)² = (a-b)²+4ab。 5. 整式的除法运算
- 同底数幂相除底数不变指数相减a^m ÷ a^n = a^(m-n)a≠0
- 单项式除以单项式:系数、相同字母的幂分别相除,单独的字母连同指数作为商的因式。
- 多项式除以单项式:用多项式的每一项除以单项式,再把所得的商相加。 6. 因式分解
- 定义:把一个多项式化成几个整式的乘积的形式(整式乘法的逆运算)。
- 方法:
- 提公因式法如果多项式中含有相同的因式提取出来ma+mb+mc = m(a+b+c))。
- 公式法利用平方差公式a²-b² = (a+b)(a-b)和完全平方公式a²±2ab+b² = (a±b)²)进行分解。
- 步骤:一提(提公因式)、二套(套公式)、三检验(分解到不能再分解为止)。 7. 因式分解示例
- x³-9x = x(x²-9) = x(x+3)(x-3)
- 16x⁴-1 = (4x²+1)(4x²-1) = (4x²+1)(2x+1)(2x-1)
- -9x²y+6xy²-y³ = -y(9x²-6xy+y²) = -y(3x-y)²
- (2a-b)²+8ab = 4a²-4ab+b²+8ab = 4a²+4ab+b² = (2a+b)²
### 总结
通过以上复习,应熟练掌握代数式的概念及求值方法,整式的相关概念,整式的加减、乘除运算,乘法公式的应用以及因式分解的方法和步骤。
下面是试题的相关信息:
==========================================================
中等难度 第1题
1.
 2024年4月25日神舟十八号载人飞船成功与空间站对接。对接前的运动简化如下空间站在轨道上匀速圆周运动速度大小为
1. 2024年4月25日神舟十八号载人飞船成功与空间站对接。对接前的运动简化如下空间站在轨道上匀速圆周运动速度大小为
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image1.png)
飞船在椭圆轨道Ⅱ上运动近地点B点离地的高度是200km远地点A点离地的高度是356km飞船经过A点的速度大小为
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image2.png)
经过B点的速度大小为
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image3.png)
。已知轨道、轨道Ⅱ在A点相切地球半径为6400km下列说法正确是(    )
。已知轨道、轨道Ⅱ在A点相切地球半径为6400km下列说法正确是()
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image4.png)
A 在轨道Ⅱ上经过A的速度等于在轨道上经过A的速度
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image5.png)
@@ -97,14 +44,14 @@
可知在轨道
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image10.png)
上经过A的速度小于在轨道 I 上经过A的速度
上经过A的速度小于在轨道I上经过A的速度
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image11.png)
故A错误
 B.根据
B.根据
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image12.png)
@@ -114,19 +61,19 @@
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image13.png)
可知在轨道Ⅱ上经过A的向心加速度等于在轨道 I 上经过A的向心加速度故B错误
可知在轨道Ⅱ上经过A的向心加速度等于在轨道I上经过A的向心加速度故B错误
 C.第一宇宙速度是近地卫星的环绕速度也是最大的圆周运动的环绕速度但轨道Ⅱ为椭圆轨道发射速度小于第二宇宙速度即可所以在轨道工上经过B的速度可能大于7.9![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image14.png)
C.第一宇宙速度是近地卫星的环绕速度也是最大的圆周运动的环绕速度但轨道Ⅱ为椭圆轨道发射速度小于第二宇宙速度即可所以在轨道工上经过B的速度可能大于7.9![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image14.png)
故C正确
 D.根据开普勒第三定律得
D.根据开普勒第三定律得
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image15.png)
其中![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image16.png)
 ![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image17.png)
 ,解得
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image17.png)
,解得
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image18.png)
@@ -136,7 +83,7 @@
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image19.png)
 
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image20.png)
@@ -149,7 +96,7 @@
代入数据解得
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image22.png)
 
故D错误。
@@ -171,7 +118,6 @@
【关联关键能力】暂无数据
==========================================================
==========================================================
中等难度 第2题
1.
@@ -272,7 +218,6 @@
【关联关键能力】暂无数据
==========================================================
==========================================================
中等难度 第3题
1.
@@ -331,11 +276,10 @@
【关联关键能力】暂无数据
==========================================================
==========================================================
中等难度 第4题
1.
 如图所示,嫦娥五号探测器由轨道器、返回器、着陆器和上升器等多个部分组成。探测器完成对月球表面的取样任务后,样品将由上升器携带升空进入环月轨道,与环月轨道上做匀速圆周运动的轨道器、返回器组合体(简称"组合体")对接。为了安全,上升器与组合体对接时,必须具有相同的速度。已知上升器(含样品)的质量为*m*,月球的半径为*R*,月球表面的"重力加速度"为*g*,组合体到月球表面的高度为*h*。取上升器与月球相距无穷远时引力势能为零,上升器与月球球心距离*r*时,引力势能为
如图所示,嫦娥五号探测器由轨道器、返回器、着陆器和上升器等多个部分组成。探测器完成对月球表面的取样任务后,样品将由上升器携带升空进入环月轨道,与环月轨道上做匀速圆周运动的轨道器、返回器组合体(简称"组合体")对接。为了安全,上升器与组合体对接时,必须具有相同的速度。已知上升器(含样品)的质量为*m*,月球的半径为*R*,月球表面的"重力加速度"为*g*,组合体到月球表面的高度为*h*。取上升器与月球相距无穷远时引力势能为零,上升器与月球球心距离*r*时,引力势能为
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image1.png)
*G*为引力常量。*M*为月球的质量(未知),不计月球自转的影响。下列说法正确的是(  )
@@ -435,7 +379,7 @@
【关联关键能力】暂无数据
==========================================================
==========================================================
中等难度 第5题
1.
北斗三号由30颗卫星组成。由24颗较低的中圆地球轨道卫星、3颗较高的地球同步轨道卫星和3颗较高的倾斜地球同步轨道卫星组成如图所示。关于运动的卫星以下说法正确的是  
@@ -495,9 +439,8 @@
【关联关键能力】暂无数据
==========================================================
==========================================================
简单难度 第1题
1. 下列有关万有引力的说法中,正确的是( )
简单难度 第6题
1. 下列有关万有引力的说法中,正确的是()
A 物体落到地面上,说明地球对物体有引力,物体对地球没有引力
@@ -545,10 +488,10 @@
==========================================================
==========================================================
简单难度 第2
简单难度 第7
1. 关于万有引力及其计算公式
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image1.png)
,下列说法正确的是( 
,下列说法正确的是()
A 万有引力只存在于质量很大的两个物体之间
@@ -615,7 +558,7 @@
==========================================================
==========================================================
简单难度 第3
简单难度 第8
1.
假设在地球周围有质量相等的A、B两颗地球卫星已知地球半径为R卫星A距地面高度为R卫星B距地面高度为2R卫星B受到地球的万有引力大小为F
卫星A受到地球的万有引力大小为
@@ -662,7 +605,7 @@
==========================================================
==========================================================
简单难度 第4
简单难度 第9
1. 质量为
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image1.png)
的人造地球卫星在地面上空高
@@ -718,7 +661,7 @@
==========================================================
==========================================================
简单难度 第5
简单难度 第10
1.
观察"神舟十号"在圆轨道上的运动发现每经过时间2*t*通过的弧长为*L*,该弧长对应的圆心角为*θ*(弧度),如图所示,已知引力常量为*G*,由此可推导出地球的质量为(  )
@@ -777,7 +720,7 @@
==========================================================
==========================================================
高级难度 第1题
高级难度 第11
1.
我国首颗超百*Gbps*容量高通量地球静止轨道通信卫星中星26号卫星于北京时间2023年2月23日在西昌卫星发射中心成功发射该卫星主要用于为固定端及车、船、机载终端提供高速宽带接入服务。如图某时刻中星26与椭圆轨道侦察卫星恰好位于C、*D*两点,两星轨道相交于*A*、*B*两点,*C*、*D*连线过地心,*D*点为远地点,两卫星运行周期都为*T*。下列说法正确的是(  )
@@ -846,12 +789,12 @@
==========================================================
==========================================================
高级难度 第2题
高级难度 第12题
1.
在高空运行的同步卫星功能失效后,往往会被送到同步轨道上空几百公里处的"墓地轨道",以免影响其他在轨卫星并节省轨道资源。如图甲所示,我国"实践21号"卫星在地球同步轨道"捕获"已失效的"北斗二号G~2~"卫星后,成功将其送入"墓地轨道"。已知转移轨道与同步轨道、墓地轨道分别相切于P、Q点"北斗二号G~2~"卫星在P点进入转移轨道从Q点进入墓地轨道    
在高空运行的同步卫星功能失效后,往往会被送到同步轨道上空几百公里处的"墓地轨道",以免影响其他在轨卫星并节省轨道资源。如图甲所示,我国"实践21号"卫星在地球同步轨道"捕获"已失效的"北斗二号G~2~"卫星后,成功将其送入"墓地轨道"。已知转移轨道与同步轨道、墓地轨道分别相切于P、Q点"北斗二号G~2~"卫星在P点进入转移轨道从Q点进入墓地轨道
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1b860473b366f2339ba82e6bb37d88f3/media/image1.png)
  ![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1b860473b366f2339ba82e6bb37d88f3/media/image2.png)
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1b860473b366f2339ba82e6bb37d88f3/media/image2.png)
A 卫星在同步轨道上运行时会经过河南上空
@@ -905,7 +848,7 @@
==========================================================
==========================================================
高级难度 第3题
高级难度 第13题
1.
在星球M上将一轻弹簧竖直固定在水平桌面上把物体P轻放在弹簧上端P由静止向下运动物体的加速度a与弹簧的压缩量x间的关系如图中实线所示。在另一星球N上用完全相同的弹簧改用物体Q完成同样的过程其a--x关系如图中虚线所示假设两星球均为质量均匀分布的球体。已知星球M的半径是星球N的3倍
@@ -958,7 +901,7 @@
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image10.png)
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image11.png)
 
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image12.png)
故C正确。当速度为零时弹簧的压缩量最大由机械能守恒知
@@ -992,9 +935,9 @@
==========================================================
==========================================================
高级难度 第4题
高级难度 第14题
1.
关于如图a、图b、图c、图d所示的四种情况下列说法中不正确的是   
关于如图a、图b、图c、图d所示的四种情况下列说法中不正确的是
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1fed2b06e9b4da9f88221ee2ed96a315/media/image1.png)
@@ -1047,7 +990,7 @@
==========================================================
==========================================================
高级难度 第5题
高级难度 第15题
1.
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image1.png)
@@ -1106,8 +1049,8 @@
C.交会对接试验过程中飞船做离心运动的同时做加速运动所以发动机需要提供飞船向前和指向核心舱的作用力C正确
D.交会对接试验过程中, ![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image17.png)
 D错误。
D.交会对接试验过程中,![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image17.png)
D错误。
故选AC

File diff suppressed because one or more lines are too long

View File

@@ -35,15 +35,38 @@ function initL2Dwidget() {
},
"mobile": { "show": true, "scale": 0.5 },
"react": { "opacityDefault": 0.8, "opacityOnHover": 1 },
"dialog": { "enable": true, "script": {
'tap body': `你好啊,我是${model.name}`,
'tap face': '有什么问题或者烦心事都可以和我聊聊~'
}}
"dialog": {
"enable": true,
"script": {
'tap body': `你好啊,我是${model.name}`,
'tap face': '有什么问题或者烦心事都可以和我聊聊~'
},
"hitokoto": false
}
});
// 初始化完成后延迟显示欢迎消息
setTimeout(() => {
if (window.L2Dwidget && window.L2Dwidget.dialog) {
window.L2Dwidget.dialog.show(`你好啊,我是${model.name}`);
}
}, 1000);
}
// 页面加载完成后初始化看板娘
window.addEventListener('load', initL2Dwidget);
window.addEventListener('load', function() {
initL2Dwidget();
// 为学伴选择器绑定change事件监听器
const modelSelect = document.getElementById('model-select');
if (modelSelect) {
modelSelect.addEventListener('change', function() {
const selectedModelId = this.value;
console.log('用户选择学伴:', selectedModelId);
switchL2DModel(selectedModelId);
});
}
});
// 暴露模型切换功能接口
window.switchL2DModel = function(modelId) {

View File

@@ -7,6 +7,11 @@
<link rel="stylesheet" href="physics_quiz.css">
</head>
<body>
<!-- 权限问题链接移到顶部 -->
<div style="position: fixed; top: 10px; right: 10px; z-index: 9999; background: rgba(255,255,255,0.9); padding: 5px 10px; border-radius: 5px; box-shadow: 0 2px 5px rgba(0,0,0,0.2);">
<a href="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/11%E3%80%81%E5%AD%A6%E4%BC%B4Chrome%E5%BD%95%E9%9F%B3%E9%85%8D%E7%BD%AE%E4%BF%AE%E6%94%B9.pdf" style="color: #007bff; text-decoration: none; font-size: 14px;">有权限问题?</a>
</div>
<div class="container">
<header>
<h1>物理知识测验 - 万有引力定律</h1>
@@ -105,9 +110,7 @@
</div>
</div>
<div>
<a href="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/11%E3%80%81%E5%AD%A6%E4%BC%B4Chrome%E5%BD%95%E9%9F%B3%E9%85%8D%E7%BD%AE%E4%BF%AE%E6%94%B9.pdf">有权限问题?</a>
</div>
<!-- 移除底部的权限问题链接,已经移到顶部 -->
<!-- 引入看板娘相关脚本 -->
<script src="https://l2dwidget.js.org/lib/L2Dwidget.min.js"></script>

View File

@@ -1,25 +1,25 @@
// 存储各难度题目的正确答案
const correctAnswers = {
medium: {
mq1: 'B',
mq1: 'C',
mq2: 'D',
mq3: 'B',
mq4: 'A',
mq5: 'C'
mq3: 'AC',
mq4: 'D',
mq5: 'D'
},
easy: {
eq1: 'B',
eq2: 'A',
eq1: 'D',
eq2: 'D',
eq3: 'C',
eq4: 'B',
eq5: 'A'
},
hard: {
hq1: 'C',
hq2: 'A',
hq3: 'C',
hq4: ['C', 'D'], // 多选题正确答案是CD
hq5: ['A', 'C'] // 多选题正确答案是AC
hq1: 'D',
hq2: 'C',
hq3: ['A', 'C'],
hq4: ['C', 'D'],
hq5: ['A', 'C']
}
};
@@ -31,212 +31,230 @@ const quizQuestions = [
difficulty: 'medium',
number: 1,
points: 20,
text: '关于万有引力定律,下列说法正确的是(  )',
text: '2024年4月25日神舟十八号载人飞船成功与空间站对接。对接前的运动简化如下空间站在轨道上匀速圆周运动速度大小为<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image1.png" />飞船在椭圆轨道Ⅱ上运动近地点B点离地的高度是200km远地点A点离地的高度是356km飞船经过A点的速度大小为<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image2.png" />经过B点的速度大小为<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image3.png" />。已知轨道、轨道Ⅱ在A点相切地球半径为6400km下列说法正确是( )<br/><img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image4.png" />',
options: [
{ id: 'mq1-a', label: 'A', text: '万有引力定律是牛顿发现的' },
{ id: 'mq1-b', label: 'B', text: '万有引力定律适用于自然界中任何两个物体之间' },
{ id: 'mq1-c', label: 'C', text: '万有引力定律只适用于天体之间' },
{ id: 'mq1-d', label: 'D', text: '万有引力定律只适用于质点之间' }
{ id: 'mq1-a', label: 'A', text: '在轨道Ⅱ上经过A的速度等于在轨道上经过A的速度即<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image5.png" />' },
{ id: 'mq1-b', label: 'B', text: '在轨道Ⅱ上经过A的向心加速度小于在轨道上经过A的向心加速度' },
{ id: 'mq1-c', label: 'C', text: '在轨道Ⅱ上经过B的速度有可能大于<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image6.png" />' },
{ id: 'mq1-d', label: 'D', text: '在轨道Ⅱ上从B点运动到A点的时间大约为<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image7.png" />' }
],
explanation: '正确答案:B<br>解析:万有引力定律是牛顿发现的故A正确万有引力定律适用于自然界中任何两个物体之间故B正确万有引力定律不仅适用于天体之间也适用于地面上的物体之间故C错误万有引力定律适用于任何两个物体之间对于质量分布均匀的球体可以将其视为质量集中在球心的质点来处理故D错误。根据题目要求选择B。'
explanation: '正确答案:C<br>解析:A.根据<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image8.png" />得<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image9.png" />可知在轨道<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image10.png" />上经过A的速度小于在轨道I上经过A的速度即<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image11.png" />故A错误' +
'B.根据<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image12.png" />得<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image13.png" />可知在轨道Ⅱ上经过A的向心加速度等于在轨道I上经过A的向心加速度故B错误' +
'C.第一宇宙速度是近地卫星的环绕速度也是最大的圆周运动的环绕速度但轨道Ⅱ为椭圆轨道发射速度小于第二宇宙速度即可所以在轨道工上经过B的速度可能大于7.9<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image14.png" />故C正确' +
'D.根据开普勒第三定律得<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image15.png" />其中<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image16.png" /><img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image17.png" />,解得<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image18.png" />又<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image19.png" />则<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image20.png" />轨道Ⅱ上从B点运动到A点的时间<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image21.png" />代入数据解得<img src = "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7ca0806dedea87fd1bb38857277fdd36/media/image22.png" />故D错误。' +
'故答案为C。'
},
{
id: 'mq2',
difficulty: 'medium',
number: 2,
points: 20,
text: '地球质量为M半径为R引力常量为G。一颗质量为m的人造地球卫星在距离地面高度为h的轨道上做匀速圆周运动  ',
text: '《天问》是屈原笔下的不朽诗篇,而"天问"行星探索系列代表着中国人对深空物理研究的不懈追求。如下图所示,半径为R的两球形行星A、B的密度之比为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image1.png" />A、B各有一个近地卫星C、D其绕行周期分别为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image2.png" /> 、<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image3.png" />。站在行星表面的宇航员从距A行星表面高为h处以<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image4.png" />水平抛出一物体a从距B行星表面高为2h处以<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image5.png" />水平抛出另一物体b。下列说法正确的是 <br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image6.jpeg" />',
options: [
{ id: 'mq2-a', label: 'A', text: '卫星的线速度大小为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image1.png" alt="公式">' },
{ id: 'mq2-b', label: 'B', text: '卫星的角速度大小为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image2.png" alt="公式">' },
{ id: 'mq2-c', label: 'C', text: '卫星的向心加速度大小为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image3.png" alt="公式">' },
{ id: 'mq2-d', label: 'D', text: '卫星的周期为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image4.png" alt="公式">' }
{ id: 'mq2-a', label: 'A', text: 'C、D绕A、B运行的速度之比为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image7.png" />' },
{ id: 'mq2-b', label: 'B', text: 'B、D绕A、B运行的周期满足<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image8.png" />' },
{ id: 'mq2-c', label: 'C', text: '由于不知道a与b的质量所以无法求出二者落地时速度之比' },
{ id: 'mq2-d', label: 'D', text: 'A、B两物体从抛出到落地的位移之比为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image7.png" />' }
],
explanation: '正确答案:C<br>解析:A.卫星的线速度大小为v=√(GM/(R+h))故A错误B.卫星的角速度大小为ω=√(GM/(R+h)³)故B错误C.卫星的向心加速度大小为a=GM/(R+h)²故C正确D.卫星的周期为T=2π√((R+h)³/GM)故D错误。故答案为C。'
explanation: '正确答案:D<br>解析:由于两个行星半径相等则体积相等根据密度公式可以得出星球A和B的质量之比为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image9.png" />根据引力提供向心力可以得出两个近地卫星的周期的表达式为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image10.png" />所以两个近地卫星的周期之比为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image11.png" />:1根据线速度的表达式为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image12.png" />则可以得出两个近地卫星的线速度之比为1:<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image11.png" />' +
'根据引力形成重力可以得出<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image13.png" />则两个抛出物体的重力加速度之比为为12根据位移公式<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image14.png" />可以求出运动的时间之比为11则根据水平方向的位移公式可以求出运动的水平位移之比为12则合位移之比为12根据速度公式可以求出落地竖直方向的速度之比为1:1则根据速度的合成<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7157d2a0facb925c0bc8fd90ca9e4745/media/image15.png" />未知分速度的关系不能求出合速度的比值所以ABC错误D对正确答案为D。'
},
{
id: 'mq3',
difficulty: 'medium',
number: 3,
points: 20,
text: '已知地球质量为M半径为R引力常量为G。一物体在地球表面所受的重力为mg若将该物体移至距离地面高度为R的位置则该物体所受的重力为  ',
text: '登天揽月奔月取壤嫦娥五号完成了中国航天史上的一次壮举。2020年12月17日嫦娥五号轨道器与返回器在距离地球5000公里处实施分离轨道器启程飞往日地拉格朗日点<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7b43132812d41907ac0714de19051393/media/image1.png" />如图1所示返回器独自携带月壤样品返回地球如图2所示图中A、C、E三点均在大气层边缘返回器从A到E无动力作用下列说法正确的是  <br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7b43132812d41907ac0714de19051393/media/image2.png" />',
options: [
{ id: 'mq3-a', label: 'A', text: 'mg/4' },
{ id: 'mq3-b', label: 'B', text: 'mg/2' },
{ id: 'mq3-c', label: 'C', text: '2mg' },
{ id: 'mq3-d', label: 'D', text: '4mg' }
{ id: 'mq3-a', label: 'A', text: '图1中轨道器在<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7b43132812d41907ac0714de19051393/media/image1.png" />点所受的太阳的引力大于地球对其的引力' },
{ id: 'mq3-b', label: 'B', text: '图1中轨道器在<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7b43132812d41907ac0714de19051393/media/image1.png" />点处于平衡状态' },
{ id: 'mq3-c', label: 'C', text: '图2中返回器通过A点时的动能等于其通过C点时的动能' },
{ id: 'mq3-d', label: 'D', text: '图2中返回器在A、C、E三点处的加速度相同' }
],
explanation: '正确答案A<br>解析:物体在地球表面所受的重力为mg=GMm/R²当物体移至距离地面高度为R的位置时物体到地心的距离为2R此时重力为mg\'=GMm/(2R)²=GMm/4R²=mg/4故答案为A。'
explanation: '正确答案AC<br>解析:AB.该轨道器在L点环绕太阳做圆周运动时该轨道器受到地球和太阳的引力的合力指向太阳因此该轨道器所受的太阳的引力大于地球对其的引力处于不平衡状态A符合题意B不符合题意' +
'C.A点到C点过程万有引力做功为0但空气阻力做负功故C点时的动能小于A点时的动能故C符合题意正确D. 返回器在A、C、E三点处的轨道高度相同根据<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/7b43132812d41907ac0714de19051393/media/image3.png" />可知加速度大小相同但方向不同D不符合题意。故答案为A。'
},
{
id: 'mq4',
difficulty: 'medium',
number: 4,
points: 20,
text: '关于开普勒行星运动定律,下列说法正确的是(  )',
text: '如图所示,嫦娥五号探测器由轨道器、返回器、着陆器和上升器等多个部分组成。探测器完成对月球表面的取样任务后,样品将由上升器携带升空进入环月轨道,与环月轨道上做匀速圆周运动的轨道器、返回器组合体(简称"组合体"对接。为了安全上升器与组合体对接时必须具有相同的速度。已知上升器含样品的质量为m月球的半径为R月球表面的"重力加速度"为g组合体到月球表面的高度为h。取上升器与月球相距无穷远时引力势能为零上升器与月球球心距离r时引力势能为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image1.png" />G为引力常量。M为月球的质量未知不计月球自转的影响。下列说法正确的是  <br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image2.png" />',
options: [
{ id: 'mq4-a', label: 'A', text: '所有行星绕太阳运动的轨道都是正圆' },
{ id: 'mq4-b', label: 'B', text: '行星在近日点的速率小于在远日点的速率' },
{ id: 'mq4-c', label: 'C', text: '所有行星的轨道半长轴的三次方与公转周期的二次方的比值都相等' },
{ id: 'mq4-d', label: 'D', text: '开普勒定律仅适用于行星绕太阳的运动' }
{ id: 'mq4-a', label: 'A', text: '月球的质量<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image3.png" />' },
{ id: 'mq4-b', label: 'B', text: '组合体在环月轨道上做圆周运动的速度v的大小为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image4.png" />' },
{ id: 'mq4-c', label: 'C', text: '上升器与组合体成功对接时上升器的能量为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image5.png" />' },
{ id: 'mq4-d', label: 'D', text: '上升器从月球表面升空并与组合体成功对接至少需要的能量为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image6.png" />' }
],
explanation: '正确答案:C<br>解析A.开普勒第一定律指出所有行星绕太阳运动的轨道都是椭圆太阳处在椭圆的一个焦点上不是正圆故A错误B.根据开普勒第二定律行星与太阳的连线在相等时间内扫过相等的面积因此行星在近日点的速率大于在远日点的速率故B错误C.开普勒第三定律表明所有行星的轨道半长轴的三次方与公转周期的二次方的比值都相等故C正确D.开普勒定律仅适用于行星绕太阳的运动也适用于卫星绕行星的运动只是比值不同故D错误。故答案为C。'
explanation: '正确答案:D<br>解析A.设月球表面有一物体,质量为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image7.png" />,根据万有引力等于重力可得<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image8.png" />解得月球质量<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image9.png" />不符合题意;' +
'B.组合体在环月轨道上距地面高h处做圆周运动设组合体的质量为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image10.png" />,由万有引力提供向心力,可得<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image11.png" />解得组合体在环月轨道上做圆周运动的速度的大小为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image12.png" />B不符合题意' +
'C.上升器与组合体成功对接时与组合器具有相同的速度,所以对接上升器的动能为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image13.png" />引力势能为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image14.png" />故上升器与组合体成功对接时上升器的能量为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image15.png" />C不符合题意' +
'D.上升器从月球表面升空并与组合体成功对接至少需要的能量为成功对接时的能量与初始能量的差值,即为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/e2ef2d4a91a3dfc8f7e227c45dcf5dc0/media/image16.png" />D符合题意。故答案为D。'
},
{
id: 'mq5',
difficulty: 'medium',
number: 5,
points: 20,
text: '我国首颗超百Gbps容量高通量地球静止轨道通信卫星中星26号卫星于北京时间2023年2月23日在西昌卫星发射中心成功发射该卫星主要用于为固定端及车、船、机载终端提供高速宽带接入服务。如图某时刻中星26与椭圆轨道侦察卫星恰好位于C、D两点两星轨道相交于A、B两点C、D连线过地心D点为远地点两卫星运行周期都为T。下列说法正确的是(  )<br><br><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image1.png" alt="轨道图">',
text: '北斗三号由30颗卫星组成。由24颗较低的中圆地球轨道卫星、3颗较高的地球同步轨道卫星和3颗较高的倾斜地球同步轨道卫星组成如图所示。关于运动的卫星以下说法正确的是(  )<br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/56597a07f0524a998e4adaed9b78764a/media/image1.jpeg" />',
options: [
{ id: 'mq5-a', label: 'A', text: '中星26与侦察卫星可能在A点或B点相遇' },
{ id: 'mq5-b', label: 'B', text: '侦查卫星从D点运动到A点过程中机械能增大' },
{ id: 'mq5-c', label: 'C', text: '中星26在C点线速度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image2.png" alt="公式">与侦察卫星在D点线速度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image3.png" alt="公式">相等' },
{ id: 'mq5-d', label: 'D', text: '相等时间内中星26与地球的连线扫过的面积大于侦察卫星与地球的连线扫过的面积' }
{ id: 'mq5-a', label: 'A', text: '所有卫星运行速度大于<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/56597a07f0524a998e4adaed9b78764a/media/image2.png" />' },
{ id: 'mq5-b', label: 'B', text: '同步轨道卫星运动速度比中圆地球轨道卫星速度大' },
{ id: 'mq5-c', label: 'C', text: '所有地球同步轨道卫星运动的动能相等' },
{ id: 'mq5-d', label: 'D', text: '同步轨道卫星周期比中圆地球轨道卫星周期大' }
],
explanation: '正确答案D<br>解析A.中星26与侦察卫星周期相同并且当中星26在下半周运动时卫星在上半周运动故不可能相遇故A错误B.侦查卫星在D到A点过程中只有引力做功故机械能不变故B错误C.开普勒第二定律可知在近地点速度大于远地点速度故中星26在C点线速度大于侦察卫星在D点线速度故C错误D.中星26与侦察卫星的周期相同由开普勒第三定律中星26轨道半径等于侦察卫星的半长轴运动一个周期中星26是一个圆而侦察卫星是一个椭圆由于圆的面积大于椭圆的面积故相等时间内中星26与地球的连线扫过的面积大于侦察卫星与地球的连线扫过的面积故D正确故答案为D。'
explanation: '正确答案D<br>解析A卫星运行速度小于第一宇宙速度A错误B根据卫星运动向心力公式<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/56597a07f0524a998e4adaed9b78764a/media/image3.png" />可得r越大速度越小故同步轨道卫星运动速度比中圆地球轨道卫星速度小B错误' +
'C卫星动能与质量有关同轨道速率相等质量未知无法比较C错误D根据卫星运动向心力公式<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/56597a07f0524a998e4adaed9b78764a/media/image4.png" />可知r越大周期越大故同步轨道卫星周期比中圆地球轨道卫星周期大D正确故答案为D。'
},
// 简单难度题目
{
id: 'eq1',
difficulty: 'easy',
number: 1,
number: 6,
points: 20,
text: '万有引力定律是由哪位科学家提出的?',
text: '下列有关万有引力的说法中,正确的是( ',
options: [
{ id: 'eq1-a', label: 'A', text: '爱因斯坦' },
{ id: 'eq1-b', label: 'B', text: '牛顿' },
{ id: 'eq1-c', label: 'C', text: '伽利略' },
{ id: 'eq1-d', label: 'D', text: '开普勒' }
{ id: 'eq1-a', label: 'A', text: '物体落到地面上,说明地球对物体有引力,物体对地球没有引力' },
{ id: 'eq1-b', label: 'B', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/eaf463b2f3751dd8709921691c13c064/media/image1.png" />中的G是比例常数牛顿亲自测出了这个常数' },
{ id: 'eq1-c', label: 'C', text: '地球围绕太阳做圆周运动是因为地球受到太阳的引力和向心力的作用' },
{ id: 'eq1-d', label: 'D', text: '地面上自由下落的苹果和天空中运行的月亮,受到的都是地球的引力' }
],
explanation: '正确答案:B<br>解析:万有引力定律是由英国科学家牛顿在1687年提出的故答案为B。'
explanation: '正确答案:D<br>解析:A、根据牛顿第三定律地球对物体有引力物体对地球也有引力且等大反向故A错误B、万有引力常量是卡文迪什的扭秤实验测出的故B错误C、地球围绕太阳做圆周运动是因为受到太阳的引力向心力是一个效果力不是真实存在的力故C错误D、下落的苹果和天空中的月亮受到的力都是同一种力都是地球的引力。故D正确。故答案为D。'
},
{
id: 'eq2',
difficulty: 'easy',
number: 2,
number: 7,
points: 20,
text: '地球对物体的吸引力称为:',
text: '关于万有引力及其计算公式<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image1.png" />,下列说法正确的是( ',
options: [
{ id: 'eq2-a', label: 'A', text: '重力' },
{ id: 'eq2-b', label: 'B', text: '摩擦力' },
{ id: 'eq2-c', label: 'C', text: '弹力' },
{ id: 'eq2-d', label: 'D', text: '向心力' }
{ id: 'eq2-a', label: 'A', text: '万有引力只存在于质量很大的两个物体之间' },
{ id: 'eq2-b', label: 'B', text: '根据公式知,<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image2.png" />趋近于0时<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image3.png" />趋近于无穷大' },
{ id: 'eq2-c', label: 'C', text: '相距较远的两物体质量均增大为原来的2倍它们之间的万有引力也会增加到原来的2倍' },
{ id: 'eq2-d', label: 'D', text: '地球半径为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image4.png" />,将一物体从地面发射至离地面高度为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image5.png" />处时,物体所受万有引力减小到原来的一半,则<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image6.png" />' }
],
explanation: '正确答案:A<br>解析:地球对物体的吸引力称为重力,故答案为A。'
explanation: '正确答案:D<br>解析:A.万有引力存在任何两个物体之间计算公式适用于质量很大的物体A不符合题意B.对于表达式而言当两物体间距离r趋近于零时表达式不适用故万有引力F不会趋近于无穷大B不符合题意C. 相距较远的两物体质量增大到原来的两倍,由<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image1.png" />可知万有引力增大到原来的4倍C不符合题意D. 若万有引力减小到原来一半,即半径为原来的<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image7.png" />倍,则高度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/808fba88784f6a957badf6a25caba05d/media/image8.png" />D符合题意。故答案为D。'
},
{
id: 'eq3',
difficulty: 'easy',
number: 3,
number: 8,
points: 20,
text: '下列哪个现象与万有引力无关?',
text: '假设在地球周围有质量相等的A、B两颗地球卫星已知地球半径为R卫星A距地面高度为R卫星B距地面高度为2R卫星B受到地球的万有引力大小为F则卫星A受到地球的万有引力大小为 ',
options: [
{ id: 'eq3-a', label: 'A', text: '苹果落地' },
{ id: 'eq3-b', label: 'B', text: '月球绕地球运动' },
{ id: 'eq3-c', label: 'C', text: '磁铁吸引铁钉' },
{ id: 'eq3-d', label: 'D', text: '地球绕太阳公转' }
{ id: 'eq3-a', label: 'A', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/467fa785b554fd88ee0f7ce1e71d8ed4/media/image1.png" />' },
{ id: 'eq3-b', label: 'B', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/467fa785b554fd88ee0f7ce1e71d8ed4/media/image2.png" />' },
{ id: 'eq3-c', label: 'C', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/467fa785b554fd88ee0f7ce1e71d8ed4/media/image3.png" />' },
{ id: 'eq3-d', label: 'D', text: '4F' }
],
explanation: '正确答案C<br>解析:磁铁吸引铁钉是磁力作用的结果,与万有引力无关,故答案为C'
explanation: '正确答案C<br>解析:B卫星距地心为3R根据万有引力的表达式可知受到的万有引力为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/467fa785b554fd88ee0f7ce1e71d8ed4/media/image4.png" />A卫星距地心为2R受到的万有引力为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/467fa785b554fd88ee0f7ce1e71d8ed4/media/image5.png" />,则有<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/467fa785b554fd88ee0f7ce1e71d8ed4/media/image6.png" />ABD不符合题意C符合题意.故答案为C'
},
{
id: 'eq4',
difficulty: 'easy',
number: 4,
number: 9,
points: 20,
text: '物体的质量越大,它受到的重力就:',
text: '质量为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image1.png" />的人造地球卫星在地面上空高<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image2.png" />处绕地球做匀速圆周运动。地球质量为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image3.png" />,半径为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image4.png" />,引力常量为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image5.png" />,则卫星的向心力为( ',
options: [
{ id: 'eq4-a', label: 'A', text: '越小' },
{ id: 'eq4-b', label: 'B', text: '越大' },
{ id: 'eq4-c', label: 'C', text: '不变' },
{ id: 'eq4-d', label: 'D', text: '无法确定' }
{ id: 'eq4-a', label: 'A', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image6.png" />' },
{ id: 'eq4-b', label: 'B', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image7.png" />' },
{ id: 'eq4-c', label: 'C', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image8.png" />' },
{ id: 'eq4-d', label: 'D', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image9.png" />' }
],
explanation: '正确答案B<br>解析:根据重力公式G=mg物体受到的重力与质量成正比质量越大重力越大故答案为B。'
explanation: '正确答案B<br>解析:根据万有引力提供向心力可得,卫星的向心力为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/129a2781afbd666d5775dae7ef4db4b7/media/image10.png" />B符合题意ACD不符合题意。故答案为B。'
},
{
id: 'eq5',
difficulty: 'easy',
number: 5,
number: 10,
points: 20,
text: '在地球表面重力加速度g的近似值为',
text: '观察"神舟十号"在圆轨道上的运动发现每经过时间2t通过的弧长为L该弧长对应的圆心角为θ(弧度)如图所示已知引力常量为G由此可推导出地球的质量为( )<br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/dae1f072e1776e5d1f12869eb3f1214a/media/image1.png" />',
options: [
{ id: 'eq5-a', label: 'A', text: '9.8 m/s²' },
{ id: 'eq5-b', label: 'B', text: '5.0 m/s²' },
{ id: 'eq5-c', label: 'C', text: '15.6 m/s²' },
{ id: 'eq5-d', label: 'D', text: '3.0 m/s²' }
{ id: 'eq5-a', label: 'A', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/dae1f072e1776e5d1f12869eb3f1214a/media/image2.png" />' },
{ id: 'eq5-b', label: 'B', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/dae1f072e1776e5d1f12869eb3f1214a/media/image3.png" />' },
{ id: 'eq5-c', label: 'C', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/dae1f072e1776e5d1f12869eb3f1214a/media/image4.png" />' },
{ id: 'eq5-d', label: 'D', text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/dae1f072e1776e5d1f12869eb3f1214a/media/image5.png" />' }
],
explanation: '正确答案A<br>解析:在地球表面重力加速度g的近似值为9.8 m/s²故答案为A。'
explanation: '正确答案A<br>解析:根据弧长和半径的关系,可得轨道半径为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/dae1f072e1776e5d1f12869eb3f1214a/media/image6.png" />根据万有引力提供向心力有<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/dae1f072e1776e5d1f12869eb3f1214a/media/image7.png" />联立解的,地球的质量<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/dae1f072e1776e5d1f12869eb3f1214a/media/image8.png" />所以A正确BCD错误故选A。'
},
// 高级难度题目
{
id: 'hq1',
difficulty: 'hard',
number: 1,
number: 11,
points: 20,
text: '已知地球质量为M半径为R万有引力常量为G。一颗人造卫星在离地面高度为R的圆形轨道上运行则该卫星运行周期为:',
text: '我国首颗超百Gbps容量高通量地球静止轨道通信卫星中星26号卫星于北京时间2023年2月23日在西昌卫星发射中心成功发射该卫星主要用于为固定端及车、船、机载终端提供高速宽带接入服务。如图某时刻中星26与椭圆轨道侦察卫星恰好位于C、D两点两星轨道相交于A、B两点C、D连线过地心D点为远地点卫星运行周期都为T。下列说法正确的是  <br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image1.png" />',
options: [
{ id: 'hq1-a', label: 'A', text: '2π√(2R³/GM)' },
{ id: 'hq1-b', label: 'B', text: '4π√(2R³/GM)' },
{ id: 'hq1-c', label: 'C', text: '2π√(8R³/GM)' },
{ id: 'hq1-d', label: 'D', text: '4π√(R³/GM)' }
{ id: 'hq1-a', label: 'A', text: '中星26与侦察卫星可能在A点或B点相遇' },
{ id: 'hq1-b', label: 'B', text: '侦查卫星从D点运动到A点过程中机械能增大' },
{ id: 'hq1-c', label: 'C', text: '中星26在C点线速度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image2.png" />与侦察卫星在D点线速度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image3.png" />相等' },
{ id: 'hq1-d', label: 'D', text: '相等时间内中星26与地球的连线扫过的面积大于侦察卫星与地球的连线扫过的面积' }
],
explanation: '正确答案:C<br>解析:卫星轨道半径r=R+h=2R根据万有引力提供向心力GMm/r²=m(2π/T)²r解得T=2π√(r³/GM)=2π√((2R)³/GM)=2π√(8R³/GM)故答案为C。'
explanation: '正确答案:D<br>解析:A.中星26与侦察卫星周期相同并且当中星26在下半周运动时卫星在上半周运动故不可能相遇故A错误B.侦察卫星在D到A点过程中只有引力做功故机械能不变故B错误C.开普勒第二定律可知在近地点速度大于远地点速度故中星26在C点线速度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image2.png" />大于侦察卫星在D点线速度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image3.png" /> 故C错误D.中星26与侦察卫星的周期相同由开普勒第三定律<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/760c54b8e6491d7c3ac566d6299818a4/media/image4.png" />中星26轨道半径等于侦察卫星的半长轴运动一个周期中星26是一个圆而侦察卫星是一个椭圆由于圆的面积大于椭圆的面积故相等时间内中星26与地球的连线扫过的面积大于侦察卫星与地球的连线扫过的面积故D正确故答案为D。'
},
{
id: 'hq2',
difficulty: 'hard',
number: 2,
number: 12,
points: 20,
text: '两个质量分别为m1和m2的星球组成双星系统它们绕两者连线上某一点做匀速圆周运动两星球之间的距离为L。则它们的运行周期T为',
text: '在高空运行的同步卫星功能失效后,往往会被送到同步轨道上空几百公里处的"墓地轨道",以免影响其他在轨卫星并节省轨道资源。如图甲所示,我国"实践21号"卫星在地球同步轨道"捕获"已失效的"北斗二号G~2~"卫星后,成功将其送入"墓地轨道"。已知转移轨道与同步轨道、墓地轨道分别相切于P、Q点"北斗二号G~2~"卫星在P点进入转移轨道从Q点进入墓地轨道 <br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1b860473b366f2339ba82e6bb37d88f3/media/image1.png" /><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1b860473b366f2339ba82e6bb37d88f3/media/image2.png" />',
options: [
{ id: 'hq2-a', label: 'A', text: '2π√(L³/G(m1+m2))' },
{ id: 'hq2-b', label: 'B', text: '2π√(L³/2G(m1+m2))' },
{ id: 'hq2-c', label: 'C', text: '2π√(L³/Gm1m2)' },
{ id: 'hq2-d', label: 'D', text: '2π√(L³/G|m1-m2|)' }
{ id: 'hq2-a', label: 'A', text: '卫星在同步轨道上运行时会经过河南上空' },
{ id: 'hq2-b', label: 'B', text: '不同国家发射的同步卫星轨道高度不同' },
{ id: 'hq2-c', label: 'C', text: '卫星在转移轨道上经过P点的速度大于在同步轨道上经过P点的速度' },
{ id: 'hq2-d', label: 'D', text: '卫星在转移轨道上经过Q点的加速度小于在墓地轨道上经过Q点的加速度' }
],
explanation: '正确答案:A<br>解析:双星系统中万有引力提供向心力且两星球的角速度相等。设m1和m2到质心的距离分别为r1和r2则r1+r2=Lm1ω²r1=m2ω²r2=Gm1m2/L²解得ω=√(G(m1+m2)/L³)周期T=2π/ω=2π√(L³/G(m1+m2))故答案为A。'
explanation: '正确答案:C<br>解析:A.同步卫星在赤道上空所以不会经过河南上空故A错误B.不同国家发射的同步卫星周期都相同故发射的同步卫星轨道的高度相同故B错误C.卫星要从同步轨道转移到转移轨道得在p点速度增大才能到转移轨道故转移轨道经过P点的速度大于同步轨道上的P点的速度故C正确D.都在Q点到地心的距离相同所以向心力的大小相同故在转移轨道和墓地轨道在Q点的加速度大小相同故D错误故答案为C。'
},
{
id: 'hq3',
difficulty: 'hard',
number: 3,
number: 13,
points: 20,
text: '一物体在地球表面的重量为G若将该物体移至距离地心4R的位置R为地球半径则它的重量变为',
text: '在星球M上将一轻弹簧竖直固定在水平桌面上把物体P轻放在弹簧上端P由静止向下运动物体的加速度a与弹簧的压缩量x间的关系如图中实线所示。在另一星球N上用完全相同的弹簧改用物体Q完成同样的过程其a--x关系如图中虚线所示假设两星球均为质量均匀分布的球体。已知星球M的半径是星球N的3倍 )<br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image1.jpeg" />',
options: [
{ id: 'hq3-a', label: 'A', text: 'G/4' },
{ id: 'hq3-b', label: 'B', text: 'G/8' },
{ id: 'hq3-c', label: 'C', text: 'G/16' },
{ id: 'hq3-d', label: 'D', text: 'G/2' }
{ id: 'hq3-a', label: 'A', text: 'M与N的密度相等' },
{ id: 'hq3-b', label: 'B', text: 'Q的质量是P的3倍' },
{ id: 'hq3-c', label: 'C', text: 'Q下落过程中的最大动能是P的4倍' },
{ id: 'hq3-d', label: 'D', text: 'Q下落过程中弹簧的最大压缩量是P的4倍' }
],
explanation: '正确答案C<br>解析:重量即物体受到的重力根据万有引力公式G=GMm/r²当距离地心由R变为4R时重力变为原来的1/16故答案为C。'
explanation: '正确答案:AC<br>解析:把物体P轻放在弹簧上端一开始弹簧尚未变形物体仅受重力作用由图像可知这时物体P的加速度为3a~0~,根据牛顿第二定律知:<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image2.png" />,同理<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image3.png" />。由万有引力公式知:<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image4.png" /><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image5.png" /><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image6.png" />故A正确' +
'当物体的加速度为零时,物体受力平衡,这时<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image7.png" /><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image8.png" />故B错误。' +
'起初物体P做加速度逐渐减小的加速运动当物体的加速度为零时速度最大动能最大因物体运动整个过程只受到弹力和重力作用故机械能守恒设初始状态机械能为零对P<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image9.png" /><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image10.png" /><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image11.png" />故<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image12.png" />故C正确。' +
'当速度为零时弹簧的压缩量最大由机械能守恒知对P<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image13.png" />对Q<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image14.png" />,故<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/27bf34e7d81f5a7a087f6530baf3bfeb/media/image15.png" />故D错。故AC正确BD错误。故答案为AC'
},
{
id: 'hq4',
difficulty: 'hard',
number: 4,
number: 14,
points: 20,
text: '关于如图a、图b、图c、图d所示的四种情况下列说法中不正确的是   <br><br><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1fed2b06e9b4da9f88221ee2ed96a315/media/image1.png" alt="四种情况图">',
text: '关于如图a、图b、图c、图d所示的四种情况下列说法中不正确的是 <br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1fed2b06e9b4da9f88221ee2ed96a315/media/image1.png" />',
options: [
{ id: 'hq4-a', label: 'A', text: '图a中火车以大于规定速度经过外轨高于内轨的弯道时火车对外轨有压力' },
{ id: 'hq4-b', label: 'B', text: '图b中英国科学家卡文迪什利用了扭秤实验成功地测出了引力常量' },
{ id: 'hq4-c', label: 'C', text: '图c中牛顿根据第谷的观测数据提出了关于行星运动的三大定律' },
{ id: 'hq4-d', label: 'D', text: '图d中小球通过轻杆在竖直面内做圆周运动通过最高点的最小速度为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1fed2b06e9b4da9f88221ee2ed96a315/media/image2.png" alt="公式">' }
{ id: 'hq4-d', label: 'D', text: '图d中小球通过轻杆在竖直面内做圆周运动通过最高点的最小速度为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/1fed2b06e9b4da9f88221ee2ed96a315/media/image2.png" />' }
],
explanation: '正确答案CD<br>解析A图a中火车以大于规定速度经过外轨高于内轨的弯道时火车重力和轨道对火车的支持力的合力不足以提供向心力此时外轨对火车有压力从而提供一部分向心力根据牛顿第三定律可知火车对外轨有压力A正确不符合题意B图b中英国科学家卡文迪什利用了扭秤实验成功地测出了引力常量B正确不符合题意C图c中开普勒根据第谷的观测数据提出了关于行星运动的三大定律C错误符合题意D图d中小球通过轻杆在竖直面内做圆周运动由于轻杆对小球可以有竖直向上支持力的作用所以小球通过最高点时向心力可以为零即最小速度为零D错误符合题意。故答案为CD。'
explanation: '正确答案CD<br>解析A图a中火车以大于规定速度经过外轨高于内轨的弯道时火车重力和轨道对火车的支持力的合力不足以提供向心力此时外轨对火车有压力从而提供一部分向心力根据牛顿第三定律可知火车对外轨有压力A正确不符合题意' +
'B图b中英国科学家卡文迪什利用了扭秤实验成功地测出了引力常量B正确不符合题意C图c中开普勒根据第谷的观测数据提出了关于行星运动的三大定律C错误符合题意D图d中小球通过轻杆在竖直面内做圆周运动由于轻杆对小球可以有竖直向上支持力的作用所以小球通过最高点时向心力可以为零即最小速度为零D错误符合题意。故答案为CD。'
},
{
id: 'hq5',
difficulty: 'hard',
number: 5,
number: 15,
points: 20,
text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image1.png" alt="日期">年<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image2.png" alt="月份">月<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image3.png" alt="日期">日,神舟十二号载人飞船与空间站天和核心舱在轨运行<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image4.png" alt="天数">天后成功实施分离,三名航天员在踏上回家之路前,完成了绕飞和径向交会对接试验,经过两小时的绕飞和三次姿态调整后,神舟十二号飞船来到节点舱的径向对接口正下方,从相距<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image5.png" alt="距离">向相距<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image6.png" alt="距离">靠近,飞船与核心舱的轨道半径分别为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image7.png" alt="半径">和<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image8.png" alt="半径">,运行周期分别为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image9.png" alt="周期">和<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image10.png" alt="周期">,下列说法正确的是( <br><br><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image11.png" alt="轨道图">',
text: '<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image1.png" />年<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image2.png" />月<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image3.png" />日,神舟十二号载人飞船与空间站天和核心舱在轨运行<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image4.png" />' +
'天后成功实施分离,三名航天员在踏上回家之路前,完成了绕飞和径向交会对接试验,经过两小时的绕飞和三次姿态调整后,神舟十二号飞船来到节点舱的径向对接口正下方,从相距<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image5.png" />向相距<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image6.png" />靠近,飞船与核心舱的轨道半径分别为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image7.png" />和<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image8.png" />,运行周期分别为<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image9.png" />和<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image10.png" />,下列说法正确的是( <br/><img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image11.png" />',
options: [
{ id: 'hq5-a', label: 'A', text: '飞船靠近天和核心舱过程中,向心加速度逐渐增大' },
{ id: 'hq5-b', label: 'B', text: '飞船靠近天和核心舱过程中,所在轨道处的重力加速度逐渐增大' },
{ id: 'hq5-c', label: 'C', text: '交会对接试验过程中,飞船发动机需要提供飞船向前和指向核心舱的作用力' },
{ id: 'hq5-d', label: 'D', text: '交会对接试验过程中应满足<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image12.png" alt="公式">' }
{ id: 'hq5-d', label: 'D', text: '交会对接试验过程中应满足<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image12.png" />' }
],
explanation: '正确答案AC<br>解析A.交会对接试验过程中,神舟十二号飞船与天和核心舱径向交会对接,角速度大小相同,保持不变,飞船轨道半径逐渐增大,向心加速度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image13.png" alt="公式">逐渐增大A正确B.根据<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image14.png" alt="公式">可得<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image15.png" alt="公式">飞船靠近天和核心舱过程中<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image16.png" alt="公式">增大所以所在轨道处的重力加速度逐渐减小B错误C.交会对接试验过程中飞船做离心运动的同时做加速运动所以发动机需要提供飞船向前和指向核心舱的作用力C正确D.交会对接试验过程中, <img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image17.png" alt="公式">D错误。故选AC'
explanation: '正确答案AC<br>解析A.交会对接试验过程中,神舟十二号飞船与天和核心舱径向交会对接,角速度大小相同,保持不变,飞船轨道半径逐渐增大,向心加速度<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image13.png" />逐渐增大A正确' +
'B.根据<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image14.png" />可得<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image15.png" />飞船靠近天和核心舱过程中<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image16.png" />增大所以所在轨道处的重力加速度逐渐减小B错误' +
'C.交会对接试验过程中飞船做离心运动的同时做加速运动所以发动机需要提供飞船向前和指向核心舱的作用力C正确D.交会对接试验过程中,<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/WToM/images/b503155b05ad2749119fb61378d0cdd4/media/image17.png" />D错误。' +
'故选AC'
}
];

View File

@@ -1,152 +1,706 @@
// 学伴录音功能核心逻辑
// 模型配置
/**
* 学伴录音功能核心逻辑
* 模块化组织录音管理、ASR处理、音频播放、UI控制
*/
// 录音相关变量
let mediaRecorder; let audioChunks = []; let isRecording = false;
// 音频播放相关变量
let audioElement = null; let isPlaying = false;
// 获取URL参数
function getUrlParam(name) {
const reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)');
const r = window.location.search.substr(1).match(reg);
return r ? unescape(r[2]) : null;
}
// 开始录音
function startRecording() {
if (isRecording) return;
console.log("尝试开始录音");
navigator.mediaDevices.getUserMedia({ audio: true })
.then(stream => {
mediaRecorder = new MediaRecorder(stream);
audioChunks = [];
mediaRecorder.ondataavailable = event => {
if (event.data.size > 0) audioChunks.push(event.data);
};
mediaRecorder.onstop = () => {
const audioBlob = new Blob(audioChunks, { type: 'audio/wav' });
console.log("录音完成,音频数据大小:", audioBlob.size);
uploadAudioToServer(audioBlob);
};
mediaRecorder.start();
isRecording = true;
document.getElementById('recordingIndicator').style.display = 'flex';
document.getElementById('startRecordBtn').style.display = 'none';
document.getElementById('stopRecordBtn').style.display = 'flex';
console.log("开始录音成功");
// 设置最长录音时间为60秒
setTimeout(stopRecording, 60000);
})
.catch(error => {
console.error("获取麦克风权限失败:", error);
alert("请授权麦克风权限以使用录音功能");
});
}
// 停止录音
function stopRecording() {
if (!isRecording || !mediaRecorder) return;
mediaRecorder.stop();
isRecording = false;
document.getElementById('recordingIndicator').style.display = 'none';
document.getElementById('startRecordBtn').style.display = 'flex';
document.getElementById('stopRecordBtn').style.display = 'none';
console.log("停止录音");
if (mediaRecorder.stream) {
mediaRecorder.stream.getTracks().forEach(track => track.stop());
// ==================== 全局状态管理 ====================
const AudioState = {
recording: {
mediaRecorder: null,
audioChunks: [],
isRecording: false,
maxDuration: 60000 // 60秒
},
playback: {
audioElement: null,
isPlaying: false,
audioChunks: [], // 存储接收到的音频块
audioQueue: [], // 音频队列,用于流式播放
isStreamPlaying: false, // 是否正在流式播放
currentAudioIndex: 0 // 当前播放的音频索引
},
websocket: {
connection: null,
isConnected: false
}
}
};
// 上传音频到服务器
function uploadAudioToServer(audioBlob) {
console.log("开始上传音频到服务器");
document.getElementById('thinkingIndicator').style.display = 'flex';
// ==================== 工具函数 ====================
const Utils = {
// 格式化时间显示
formatTime(seconds) {
const mins = Math.floor(seconds / 60).toString().padStart(2, '0');
const secs = Math.floor(seconds % 60).toString().padStart(2, '0');
return `${mins}:${secs}`;
},
const formData = new FormData();
formData.append('file', audioBlob, 'recording.wav');
// 将Blob转换为Base64
blobToBase64(blob) {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.onloadend = () => resolve(reader.result.split(',')[1]);
reader.onerror = reject;
reader.readAsDataURL(blob);
});
}
};
fetch('/api/xueban/upload-audio', {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) throw new Error('服务器响应错误');
return response.json();
})
.then(data => {
console.log("处理结果:", data);
document.getElementById('thinkingIndicator').style.display = 'none';
if (data.success) {
showResults(data.data);
} else {
alert('音频处理失败: ' + data.message);
// ==================== UI控制器 ====================
const UIController = {
// 显示/隐藏元素
toggleElement(elementId, show) {
const element = document.getElementById(elementId);
if (element) {
element.style.display = show ? 'flex' : 'none';
}
})
.catch(error => {
console.error("上传音频失败:", error);
document.getElementById('thinkingIndicator').style.display = 'none';
alert('上传音频失败: ' + error.message);
});
}
},
// 更新按钮状态
updateRecordingButtons(isRecording) {
this.toggleElement('recordingIndicator', isRecording);
this.toggleElement('startRecordBtn', !isRecording);
this.toggleElement('stopRecordBtn', isRecording);
},
// 禁用/启用帮我讲题按钮
setStartRecordButtonEnabled(enabled) {
const startBtn = document.getElementById('startRecordBtn');
if (startBtn) {
startBtn.disabled = !enabled;
startBtn.style.opacity = enabled ? '1' : '0.5';
startBtn.style.cursor = enabled ? 'pointer' : 'not-allowed';
}
},
// 更新播放按钮图标
updatePlayButton(isPlaying) {
const btn = document.getElementById('playAudioBtn');
if (!btn) return;
const playIcon = '<svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M8 5V19L19 12L8 5Z" fill="white"/></svg>';
const pauseIcon = '<svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M6 19H10V5H6V19ZM14 19H18V5H14V19Z" fill="white"/></svg>';
btn.innerHTML = isPlaying ? pauseIcon : playIcon;
},
// 更新进度条
updateProgress(progress) {
const progressBar = document.getElementById('progressBar');
if (progressBar) {
progressBar.style.width = `${progress}%`;
}
},
// 更新时间显示
updateTimeDisplay(currentTime, duration) {
const timeDisplay = document.getElementById('audioTime');
if (timeDisplay) {
timeDisplay.textContent = `${Utils.formatTime(currentTime)} / ${Utils.formatTime(duration)}`;
}
}
};
// 显示ASR识别结果和反馈
function showResults(data) {
const resultContainer = document.getElementById('resultContainer');
resultContainer.style.display = 'flex';
document.getElementById('asrResultText').textContent = data.asr_text || '未识别到内容';
document.getElementById('feedbackResultText').textContent = data.feedback_text || '无反馈内容';
if (data.audio_url) {
if (audioElement) audioElement.pause();
audioElement = new Audio(data.audio_url);
audioElement.onloadedmetadata = function() {
updateAudioTimeDisplay();
try { audioElement.play(); isPlaying = true; updatePlayButton(); }
catch (e) { console.error("自动播放失败:", e); }
// ==================== WebSocket管理模块 ====================
const WebSocketManager = {
// 初始化WebSocket连接
initConnection() {
console.log('初始化WebSocket连接');
if (AudioState.websocket.connection &&
AudioState.websocket.connection.readyState === WebSocket.OPEN) {
console.log('WebSocket连接已存在');
return;
}
const protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:';
const wsUrl = `${protocol}//${window.location.host}/api/xueban/streaming-chat`;
console.log('正在建立WebSocket连接:', wsUrl);
AudioState.websocket.connection = new WebSocket(wsUrl);
// 连接打开
AudioState.websocket.connection.onopen = () => {
console.log('WebSocket连接已建立');
AudioState.websocket.isConnected = true;
};
audioElement.ontimeupdate = function() { updateAudioProgress(); updateAudioTimeDisplay(); };
audioElement.onended = function() { isPlaying = false; updatePlayButton(); };
document.getElementById('playAudioBtn').onclick = togglePlayAudio;
document.getElementById('audioProgress').onclick = function(e) {
const rect = this.getBoundingClientRect();
audioElement.currentTime = (e.clientX - rect.left) / rect.width * audioElement.duration;
// 连接关闭
AudioState.websocket.connection.onclose = () => {
console.log('WebSocket连接已关闭');
AudioState.websocket.isConnected = false;
};
// 连接错误
AudioState.websocket.connection.onerror = (error) => {
console.error('WebSocket连接错误:', error);
AudioState.websocket.isConnected = false;
UIController.toggleElement('thinkingIndicator', false);
UIController.setStartRecordButtonEnabled(true);
alert('连接服务器失败,请稍后再试');
};
// 接收消息
AudioState.websocket.connection.onmessage = (event) => {
console.log('收到WebSocket消息:', {
type: typeof event.data,
size: typeof event.data === 'string' ? event.data.length : event.data.size
});
this.handleMessage(event);
};
},
// 处理接收到的消息
async handleMessage(event) {
// 检查消息类型
if (typeof event.data === 'string') {
// JSON消息
try {
const data = JSON.parse(event.data);
console.log('解析JSON消息成功:', data);
switch (data.type) {
case 'asr_result':
// 显示ASR识别结果
console.log('收到ASR结果:', data.text);
const asrTextElement = document.getElementById('asrResultText');
if (asrTextElement) {
asrTextElement.textContent = data.text || '未识别到内容';
}
break;
case 'end':
// 处理结束
console.log('流式处理完成');
console.log('当前音频块数量:', AudioState.playback.audioChunks.length);
UIController.toggleElement('thinkingIndicator', false);
UIController.setStartRecordButtonEnabled(true);
// 标记流式播放结束
AudioState.playback.isStreamPlaying = false;
// 如果有音频数据但尚未开始播放,则开始播放
if (AudioState.playback.audioQueue.length > 0 && !AudioState.playback.isPlaying) {
console.log('开始播放队列中的音频');
AudioPlayer.processAudioQueue();
}
break;
case 'error':
// 错误处理
console.error('收到错误消息:', data.message);
UIController.toggleElement('thinkingIndicator', false);
UIController.setStartRecordButtonEnabled(true);
// 重置流式播放状态
AudioState.playback.isStreamPlaying = false;
AudioState.playback.audioQueue = [];
alert('处理失败: ' + data.message);
break;
default:
console.log('未知消息类型:', data.type);
}
} catch (e) {
console.error('解析JSON消息失败:', e);
console.error('原始消息内容:', event.data);
}
} else {
// 二进制音频数据
console.log('收到音频数据,大小:', event.data.size);
console.log('音频数据类型:', event.data.type);
// 保存到原始音频块数组(保持原有逻辑)
AudioState.playback.audioChunks.push(event.data);
// 添加到音频队列(用于流式播放)
AudioState.playback.audioQueue.push(event.data);
console.log('当前音频队列长度:', AudioState.playback.audioQueue.length);
// 显示播放界面 - 这是新增的代码
UIController.toggleElement('audioPlayer', true);
// 如果尚未开始流式播放,则开始播放
if (!AudioState.playback.isStreamPlaying) {
console.log('开始流式播放音频');
AudioState.playback.isStreamPlaying = true;
AudioPlayer.processAudioQueue();
}
}
},
// 合并所有音频块并播放
combineAndPlayAudio() {
try {
console.log('开始合并音频块,数量:', AudioState.playback.audioChunks.length);
// 创建一个新的Blob包含所有音频块
const combinedBlob = new Blob(AudioState.playback.audioChunks, { type: 'audio/wav' });
console.log('合并后的Blob大小:', combinedBlob.size);
// 创建音频URL
const audioUrl = URL.createObjectURL(combinedBlob);
console.log('创建音频URL:', audioUrl);
// 初始化音频播放器
AudioPlayer.initPlayer(audioUrl);
} catch (error) {
console.error('合并和播放音频失败:', error);
}
},
// 关闭WebSocket连接
closeConnection() {
if (AudioState.websocket.connection) {
AudioState.websocket.connection.close();
AudioState.websocket.connection = null;
AudioState.websocket.isConnected = false;
console.log('WebSocket连接已关闭');
}
}
};
// ==================== 音频播放模块 ====================
const AudioPlayer = {
// 初始化音频播放器
initPlayer(audioUrl) {
console.log('AudioPlayer.initPlayer 被调用音频URL:', audioUrl);
// 停止当前播放的音频
if (AudioState.playback.audioElement) {
console.log('停止当前播放的音频');
AudioState.playback.audioElement.pause();
}
// 创建新的音频元素
console.log('创建新的音频元素');
AudioState.playback.audioElement = new Audio(audioUrl);
AudioState.playback.isPlaying = false;
// 绑定音频事件
AudioState.playback.audioElement.onloadedmetadata = () => {
console.log('音频元数据加载完成');
this.updateTimeDisplay();
this.play(); // 自动播放
};
AudioState.playback.audioElement.onplay = () => {
console.log('音频开始播放');
};
AudioState.playback.audioElement.onpause = () => {
console.log('音频暂停');
};
AudioState.playback.audioElement.ontimeupdate = () => {
this.updateProgress();
this.updateTimeDisplay();
};
AudioState.playback.audioElement.onended = () => {
console.log('音频播放结束');
AudioState.playback.isPlaying = false;
UIController.updatePlayButton(false);
};
AudioState.playback.audioElement.onerror = (error) => {
console.error('音频播放错误:', error);
};
// 绑定播放按钮点击事件
const playBtn = document.getElementById('playAudioBtn');
if (playBtn) {
playBtn.onclick = () => this.togglePlay();
}
// 绑定进度条点击事件
const progressContainer = document.getElementById('audioProgress');
if (progressContainer) {
progressContainer.onclick = (e) => {
const rect = progressContainer.getBoundingClientRect();
const clickPosition = (e.clientX - rect.left) / rect.width;
AudioState.playback.audioElement.currentTime = clickPosition * AudioState.playback.audioElement.duration;
};
}
},
// 播放/暂停切换
togglePlay() {
if (!AudioState.playback.audioElement) return;
if (AudioState.playback.isPlaying) {
this.pause();
} else {
this.play();
}
},
// 播放
play() {
if (!AudioState.playback.audioElement) return;
try {
AudioState.playback.audioElement.play();
AudioState.playback.isPlaying = true;
UIController.updatePlayButton(true);
} catch (e) {
console.error('播放失败:', e);
}
},
// 暂停
pause() {
if (!AudioState.playback.audioElement) return;
AudioState.playback.audioElement.pause();
AudioState.playback.isPlaying = false;
UIController.updatePlayButton(false);
},
// 更新进度条
updateProgress() {
if (!AudioState.playback.audioElement) return;
const progress = (AudioState.playback.audioElement.currentTime / AudioState.playback.audioElement.duration) * 100;
UIController.updateProgress(progress);
},
// 更新时间显示
updateTimeDisplay() {
if (!AudioState.playback.audioElement) return;
const currentTime = AudioState.playback.audioElement.currentTime;
const duration = AudioState.playback.audioElement.duration;
UIController.updateTimeDisplay(currentTime, duration);
},
// 初始化流式播放器
initStreamPlayer() {
// 创建新的音频元素用于流式播放
if (!AudioState.playback.streamAudioElement) {
AudioState.playback.streamAudioElement = new Audio();
// 监听音频结束事件
AudioState.playback.streamAudioElement.addEventListener('ended', () => {
// 当前音频播放完毕,处理队列中的下一个音频
this.processAudioQueue();
});
// 监听错误事件
AudioState.playback.streamAudioElement.addEventListener('error', (e) => {
console.error('流式播放音频错误:', e);
// 即使出错,也继续处理队列中的下一个音频
this.processAudioQueue();
});
}
},
// 处理音频队列
processAudioQueue() {
// 在AudioPlayer.processAudioQueue方法中修改队列为空时的处理
// 如果队列为空,则返回
if (AudioState.playback.audioQueue.length === 0) {
AudioState.playback.isStreamPlaying = false;
console.log('音频队列为空,停止流式播放');
// 隐藏播放界面 - 这是新增的代码
UIController.toggleElement('audioPlayer', false);
return;
}
// 从队列中取出第一个音频块
const audioBlob = AudioState.playback.audioQueue.shift();
console.log('从队列取出音频块,剩余队列长度:', AudioState.playback.audioQueue.length);
// 创建音频URL
const audioUrl = URL.createObjectURL(audioBlob);
// 设置音频源并播放
AudioState.playback.streamAudioElement.src = audioUrl;
AudioState.playback.streamAudioElement.play()
.then(() => {
console.log('开始播放音频块');
})
.catch(error => {
console.error('播放音频块失败:', error);
// 播放失败,继续处理下一个
this.processAudioQueue();
})
.finally(() => {
// 播放完成后释放URL对象
setTimeout(() => {
URL.revokeObjectURL(audioUrl);
}, 1000);
});
}
};
// ==================== 事件绑定模块 ====================
const EventBinder = {
// 绑定所有事件
bindEvents() {
// 绑定录音按钮事件
const startBtn = document.getElementById('startRecordBtn');
const stopBtn = document.getElementById('stopRecordBtn');
console.log('开始绑定事件,查找按钮元素...');
console.log('开始录音按钮:', startBtn);
console.log('停止录音按钮:', stopBtn);
if (startBtn) {
startBtn.onclick = () => {
console.log('点击开始录音按钮');
RecordingManager.startRecording();
};
console.log('已绑定开始录音按钮事件');
} else {
console.error('未找到开始录音按钮');
}
if (stopBtn) {
stopBtn.onclick = () => {
console.log('点击停止录音按钮');
RecordingManager.stopRecording();
};
console.log('已绑定停止录音按钮事件');
} else {
console.error('未找到停止录音按钮');
}
}
};
// ==================== 录音管理模块 ====================
const RecordingManager = {
// 初始化录音
async initRecording() {
try {
// 获取用户媒体设备
const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
// 创建媒体录制器
AudioState.recording.mediaRecorder = new MediaRecorder(stream, {
mimeType: 'audio/webm;codecs=opus'
});
// 监听数据可用事件
AudioState.recording.mediaRecorder.ondataavailable = (event) => {
if (event.data.size > 0) {
AudioState.recording.audioChunks.push(event.data);
}
};
// 监听停止事件
AudioState.recording.mediaRecorder.onstop = async () => {
console.log('录音停止,开始处理音频数据');
// 创建音频Blob
const audioBlob = new Blob(AudioState.recording.audioChunks, { type: 'audio/webm' });
console.log('录音Blob大小:', audioBlob.size);
// 更新UI
UIController.toggleElement('thinkingIndicator', true);
// 初始化WebSocket连接
WebSocketManager.initConnection();
// 等待连接建立
await this.waitForConnection();
// 发送音频数据 - 这里是错误的调用
// const success = await WebSocketManager.sendAudio(audioBlob);
// 修复后的正确调用
const success = await RecordingManager.sendAudio(audioBlob);
if (!success) {
console.error('发送音频数据失败');
UIController.toggleElement('thinkingIndicator', false);
UIController.setStartRecordButtonEnabled(true);
}
// 清空音频块
AudioState.recording.audioChunks = [];
// 停止所有音频轨道
stream.getTracks().forEach(track => track.stop());
};
console.log('录音初始化成功');
return true;
} catch (error) {
console.error('录音初始化失败:', error);
alert('录音初始化失败,请授予麦克风权限后重试');
return false;
}
},
// 开始录音
async startRecording() {
console.log('开始录音');
// 检查是否已经在录音
if (AudioState.recording.isRecording) {
console.warn('已经在录音中');
return;
}
// 初始化录音
const initialized = await this.initRecording();
if (!initialized) {
console.error('录音初始化失败,无法开始录音');
return;
}
// 开始录音
AudioState.recording.isRecording = true;
AudioState.recording.mediaRecorder.start();
// 更新UI
UIController.updateRecordingButtons(true);
console.log('录音开始成功');
// 设置最大录音时长
setTimeout(() => {
if (AudioState.recording.isRecording) {
console.log('达到最大录音时长,自动停止录音');
this.stopRecording();
}
}, AudioState.recording.maxDuration);
},
// 停止录音
stopRecording() {
console.log('停止录音');
if (!AudioState.recording.isRecording || !AudioState.recording.mediaRecorder) {
console.warn('当前没有在录音');
return;
}
// 停止录音
AudioState.recording.mediaRecorder.stop();
AudioState.recording.isRecording = false;
// 更新UI
UIController.updateRecordingButtons(false);
console.log('录音停止命令已发送');
},
// 等待WebSocket连接建立
waitForConnection() {
return new Promise((resolve) => {
const checkConnection = () => {
console.log('检查WebSocket连接状态:', AudioState.websocket.isConnected);
if (AudioState.websocket.isConnected &&
AudioState.websocket.connection &&
AudioState.websocket.connection.readyState === WebSocket.OPEN) {
console.log('WebSocket连接已建立可以发送数据');
resolve();
} else {
console.log('WebSocket连接未建立等待...');
setTimeout(checkConnection, 100);
}
};
checkConnection();
});
},
// 发送音频数据
async sendAudio(audioBlob) {
console.log('=== 开始执行sendAudio方法 ===');
// 参数验证
if (!audioBlob) {
console.error('sendAudio方法参数错误: audioBlob为空');
return false;
}
console.log('音频数据参数:', {
exists: !!audioBlob,
size: audioBlob.size,
type: audioBlob.type
});
// 连接状态检查
console.log('WebSocket连接状态:', {
isConnected: AudioState.websocket.isConnected,
connectionExists: !!AudioState.websocket.connection,
readyState: AudioState.websocket.connection ? AudioState.websocket.connection.readyState : 'N/A'
});
if (!AudioState.websocket.isConnected ||
!AudioState.websocket.connection ||
AudioState.websocket.connection.readyState !== WebSocket.OPEN) {
console.error('WebSocket连接未建立无法发送音频数据');
return false;
}
try {
console.log('将音频数据转换为Base64');
// 将音频数据转换为Base64
const base64Audio = await Utils.blobToBase64(audioBlob);
console.log('音频数据Base64长度:', base64Audio.length);
const payload = {
audio_data: base64Audio
};
console.log('准备发送的载荷:', {
keys: Object.keys(payload),
audioDataLength: payload.audio_data.length
});
// 发送音频数据
console.log('发送音频数据到WebSocket');
AudioState.websocket.connection.send(JSON.stringify(payload));
console.log('=== 音频数据发送成功 ===');
return true;
} catch (error) {
console.error('发送音频数据失败:', error);
return false;
}
}
};
// ==================== 初始化 ====================
function initializeApp() {
console.log('开始初始化学伴录音功能...');
// 初始化流式播放器
AudioPlayer.initStreamPlayer();
// 检查DOM是否已就绪
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', () => {
EventBinder.bindEvents();
console.log('学伴录音功能初始化完成DOMContentLoaded');
});
} else {
// DOM已经加载完成直接绑定事件
EventBinder.bindEvents();
console.log('学伴录音功能初始化完成(直接执行)');
}
}
// 音频播放控制函数
function togglePlayAudio() {
if (!audioElement) return;
isPlaying ? audioElement.pause() : audioElement.play();
isPlaying = !isPlaying;
updatePlayButton();
}
// 立即执行初始化
initializeApp();
function updatePlayButton() {
const btn = document.getElementById('playAudioBtn');
btn.innerHTML = isPlaying ?
'<svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M6 19H10V5H6V19ZM14 19H18V5H14V19Z" fill="white"/></svg>' :
'<svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M8 5V19L19 12L8 5Z" fill="white"/></svg>';
}
// 同时保留原有的DOMContentLoaded事件作为备用
document.addEventListener('DOMContentLoaded', () => {
EventBinder.bindEvents();
console.log('学伴录音功能备用初始化完成');
});
function updateAudioProgress() {
if (!audioElement) return;
const progress = (audioElement.currentTime / audioElement.duration) * 100;
document.getElementById('progressBar').style.width = `${progress}%`;
}
// 页面加载完成后也尝试绑定(确保万无一失)
window.addEventListener('load', () => {
EventBinder.bindEvents();
console.log('学伴录音功能load事件初始化完成');
});
function updateAudioTimeDisplay() {
if (!audioElement) return;
const format = s => `${Math.floor(s/60).toString().padStart(2,'0')}:${Math.floor(s%60).toString().padStart(2,'0')}`;
document.getElementById('audioTime').textContent = `${format(audioElement.currentTime)} / ${format(audioElement.duration)}`;
}
// 页面关闭时关闭WebSocket连接
window.addEventListener('beforeunload', () => {
WebSocketManager.closeConnection();
});