- 博客(86)
- 收藏
- 关注
原创 AT指令连接onenet平台(mqtt协议)
该文档介绍了使用AT指令通过WiFi连接OneNet物联网平台的步骤:1)通过MQTT指令建立连接,包括服务器地址、端口、设备信息和token认证参数;2)检查连接状态;3)发布JSON格式的设备属性数据;4)订阅云平台消息并处理接收到的数据。同时指出了设备收到订阅消息后需发送确认响应的问题。整个流程涵盖了物联网设备与云平台的基本通信操作。
2025-11-11 14:20:56
327
原创 AT指令无响应或者返回乱码解决方案
文章摘要:解决Ai-WB2-12F模块与Arduino通信问题,需注意两点:1.确保芯片接线正确;2.统一波特率为115200(模块默认值)。使用SoftwareSerial库创建软串口(RX=2,TX=3),在setup()中初始化硬件串口和软串口波特率均为115200。loop()函数实现双向数据转发:电脑指令→Arduino→模块,模块响应→Arduino→电脑。最后需将串口调试助手波特率设为115200即可正常收发AT指令。
2025-11-09 13:41:08
441
原创 STM32实现呼吸灯效果原理
摘要:PWM呼吸灯通过定时器硬件自动比较计数器(CNT)和捕获比较寄存器(CCR)实现。CNT不断递增,当CNT<CCR时输出高电平(LED亮),反之输出低电平(LED暗)。通过动态改变CCR值(pwm_buffer数组)实现亮度变化:CCR增大时LED变亮,减小时变暗。STM32代码通过DMA将预计算的sin²曲线占空比序列自动传输到CCR寄存器,实现无需CPU干预的平滑呼吸效果。定时器更新事件触发DMA传输,每个PWM周期更新一次占空比,确保实时性和低功耗。
2025-10-21 13:30:10
1011
原创 STM32中MX_TIM2_Init函数和HAL_TIM_Base_MspInit函数区别
摘要:MX_TIM2_Init和HAL_TIM_Base_MspInit是STM32定时器初始化的两个关键函数。MX_TIM2_Init由CubeMX生成,配置定时器功能参数(时钟源、计数模式、ARR/PSC值等),定义定时器"做什么";HAL_TIM_Base_MspInit则负责底层硬件配置(时钟使能、中断优先级、DMA等),定义定时器"如何实现"。初始化流程为:MX_TIM2_Init → HAL_TIM_Base_Init → 回调HAL_TIM_Base_M
2025-10-21 11:46:38
388
原创 GPIO 输出模式与上下拉电阻理解
摘要:GPIO输出模式主要分为推挽输出和开漏输出。推挽输出通过互补晶体管直接驱动高低电平,适用于独立强驱动场景;开漏输出仅主动拉低电平,需外接上拉电阻,支持多设备共线。上下拉电阻用于稳定引脚电平,防止悬浮干扰。选择时需考虑功能需求(输出/输入)、共线需求及电平稳定性。典型应用如LED驱动用推挽输出,I2C总线用开漏输出加外部上拉。注意避免推挽输出短路风险,高频信号优先推挽,低功耗场景可用内部上下拉。
2025-10-14 15:59:03
766
原创 Geant4实例
Geant4官方示例提供了从入门到高级的完整实例集合,涵盖多个应用领域。入门级示例(B1-B5)演示剂量学基础功能,包括粒子枪、敏感探测器和物理列表选择。Novice系列展示最小运行框架和可视化技术。高级示例分为多个专题:电磁模块(TestEm*)验证电子/γ行为;医学物理模块处理DICOM影像、放射治疗;高能物理模块模拟LHCb/ATLAS/CMS探测器;偏差加速模块实现几何分裂等优化技术;光学模块展示光子传输特性。每个示例均为独立工程,通过CMake编译后可快速运行,配套ROOT分析工具输出结果。特别实
2025-09-30 14:30:12
617
原创 ROOT图像绘制流程
摘要:本文介绍了粒子探测器数据分析的基本操作流程。首先启动root环境,列出根目录文件结构;随后调用Print()方法输出探测器击中点数据;最后分别绘制击中点在XY平面的二维分布图和XYZ空间的三维分布图。这些操作为粒子物理实验数据分析提供了基础可视化方法。
2025-09-30 12:38:05
181
原创 geant4中粒子枪与GPS对比
粒子枪(G4ParticleGun)和通用粒子源(GPS)是Geant4中的两种粒子源生成工具。粒子枪适合简单固定场景,通过代码配置粒子参数,灵活性高但需自行实现采样逻辑;GPS功能丰富,支持宏命令配置,内置多种几何/能谱/角度分布,适合复杂场景和多源管理。粒子枪轻量直观,GPS灵活强大。两者可叠加使用,但需注意GPS需在代码中创建才能响应宏命令。根据需求选择:需快速调参选GPS,需精细控制选粒子枪。
2025-09-29 20:23:19
290
原创 Condor 安装
本文详细介绍了在Linux系统(Ubuntu/CentOS)上安装配置HTCondor集群的完整流程及常见问题解决方案。主要内容包括:1)通过官方仓库安装HTCondor(10.x版本)的具体步骤;2)三种安装模式选择(单节点体验/加入现有集群/全组件安装);3)服务启动与验证方法;4)针对"Can't find collector"等典型错误的四级排查方案,涉及日志目录修复、用户权限检查、端口监听确认和主机名解析等;5)永久配置写入方法。特别提供了诊断脚本和快速修复方案,帮助用户在10
2025-09-14 15:02:48
716
原创 Ubuntu 默认图形终端设置字体大小
摘要:Ubuntu终端字体调整有两种方法:1)临时调整快捷键(Ctrl+Shift++放大、Ctrl+-缩小、Ctrl+0恢复);2)永久设置:通过终端首选项→配置文件→Text选项卡,取消系统固定字体选项,自定义字体(推荐Ubuntu Mono 13或Fira Code 14),修改立即生效,需重启终端。
2025-09-14 13:42:55
726
原创 Ubuntu 设置中文输入法
本文介绍了在Ubuntu系统上配置中文输入法的步骤:1)安装ibus-libpinyin和ibus-pinyin;2)在键盘设置中添加中文输入源;3)使用Win+空格切换输入法。若浏览器无法输入中文,需编辑.xprofile文件添加环境变量并重启系统。最后通过Ctrl+Space或Win+Space测试输入法是否正常工作。
2025-09-14 13:30:11
3627
原创 Ubuntu 虚拟机设置双向复制粘贴
本文介绍了在VirtualBox中为Ubuntu虚拟机安装增强功能的详细步骤:首先通过菜单栏"设备→安装增强功能"启动安装程序,系统会自动挂载安装光盘;然后通过终端安装必要的依赖包(build-essential、dkms等);接着进入挂载目录执行安装脚本VBoxLinuxAdditions.run;最后重启虚拟机即可启用共享剪贴板功能,实现宿主机与虚拟机间的双向文字复制粘贴。安装完成后可通过Ctrl+Shift+V快捷键测试剪贴板共享是否生效。
2025-09-14 13:03:29
803
原创 CASToR 生成的文件进行转换
该Python脚本实现了将CASToR生成的INTERFILE格式(hdr/img)医学影像文件转换为NIFTI格式的功能,支持通过ITK-SNAP软件查看。主要功能包括: 解析INTERFILE头文件(hdr)获取图像元数据 读取二进制图像数据(img)并进行格式转换 支持批量处理目录下所有hdr/img文件对 自动创建输出目录并保存为.nii.gz格式 提供命令行参数控制输入/输出路径 脚本通过SimpleITK库实现图像格式转换,处理过程中自动检测数据类型、维度顺序和缩放参数,确保转换准确性。转换结果
2025-09-05 15:57:09
283
原创 CASToR 软件编译(使用 Makefile )
这份Makefile是CASToR重建软件的传统编译配置文件,支持直接编译源码而无需CMake。它适用于Linux/macOS系统,并可通过MinGW交叉编译Windows版本。Makefile要求固定的目录结构,自动管理依赖关系,支持多种编译模式(Debug/Release)、并行计算(OpenMP/MPI)、SIMD优化和ROOT库集成。用户可通过环境变量灵活控制编译选项,如设置CASTOR_OMP=1启用OpenMP多线程,CASTOR_ROOT=1启用ROOT支持等。编译产物默认输出到bin/目录,
2025-09-04 16:22:26
732
原创 Linux 中 export 命令用法总结
Linux中的export命令用于将变量导出为环境变量,使其能被当前Shell及其子进程访问。局部变量仅限当前Shell,而环境变量可跨进程传递。基本语法包括export 变量名=值(一步导出)或先定义再export(两步)。常用场景包括:临时设置环境变量(如PATH)、导出函数供子进程调用、取消导出(export -n)及查看环境变量(export -p)。持久化需将export命令写入~/.bashrc(用户级)或/etc/profile(系统级)。注意事项:带空格的值需引号包裹,子进程修改不影响父进程
2025-09-04 16:09:25
1737
原创 ubuntu系统设置中文失败问题
摘要:解决Ubuntu中文语言包下载失败问题,可检查网络后更换下载源,将美国服务器改为国内主服务器,然后在语言支持中重新下载中文包并切换界面语言。作者已成功汉化系统。
2025-09-02 20:45:09
488
原创 Windows 下配置 GPU 用于深度学习(PyTorch)的完整流程
本文介绍了在Windows系统上配置PyTorch GPU环境的具体步骤。首先需要安装NVIDIA显卡驱动和CUDA Toolkit 12.1(建议添加到环境变量),然后验证CUDA安装是否成功。PyTorch GPU版本推荐通过官方源安装,安装完成后需检查GPU是否可用。常见问题包括CUDA未正确安装、版本不兼容或远程桌面导致的问题。最后说明只要GPU可用,训练脚本会自动使用GPU加速。整个过程强调版本兼容性和环境变量配置的重要性。
2025-07-24 15:00:54
1109
原创 Python批量制作会议桌签脚本
摘要:这是一个用于批量生成姓名桌签PPT的Python脚本。使用时需确保脚本和PPT模板在同一目录下,运行后粘贴姓名列表(支持逗号、分号或换行分隔),脚本会自动处理两字姓名间距并生成PPT文件。主要功能包括:从模板复制格式、自动调整文本对齐、保持原格式替换内容等,最终输出文件保存在桌面。该脚本需要安装python-pptx库支持,适用于需要批量制作会议桌签等场景。
2025-07-19 16:40:00
424
原创 Arduino土壤湿度检测
本文介绍了土壤湿度传感器(如YL-69)与Arduino的连接及使用方法。传感器通过A0引脚输出模拟信号(数值越小表示越湿),D0引脚输出数字信号。给出了基础接线方案(VCC接5V,GND接地,A0接模拟引脚)和完整的示例代码,包含土壤湿度分级判断(湿/中等/干)。还提供了OLED显示湿度值的扩展代码片段,并说明可通过调整阈值(默认400/800)来适应不同土壤条件,数字接口可直接使用digitalRead()读取状态。
2025-07-16 17:52:35
317
原创 Arduino使用DHT11模块显示温度、湿度
DHT11温湿度传感器是一款常用的数字模块,通过单总线输出温湿度数据。其测量范围为温度0-50℃(±2℃精度)和湿度20-90%RH(±5%精度),工作电压3.3-5.5V。使用时将VCC接5V,DATA接数字口D2,GND接地。安装Adafruit的DHT库后,可通过Arduino代码每2秒读取并串口输出温湿度值。该模块操作简单,适合基础环境监测项目。
2025-07-16 17:42:23
522
原创 IMA(DICOM)格式和JPG格式进行深度学习优缺点
使用JPG转换医学影像(DICOM)存在显著缺陷:JPG的有损压缩会丢失关键灰度信息和元数据,影响医学分析的准确性。专业应用推荐保留DICOM或使用PNG、NIfTI等无损格式,通过pydicom等工具直接处理为numpy数组。仅在教学演示等非精密场景可考虑JPG,但需注意16位转8位的动态范围损失。转换时应先进行标准化处理(0-255归一化),PNG比JPG更适合保存医学影像细节。深度学习项目优先选择能保留完整医学信息的原始格式或无损替代方案。
2025-06-26 17:37:01
537
原创 IMA文件简介
医学影像中的IMA文件通常是DICOM格式的二维切片(如MRI/CT单层图像),每个文件保存一张切片。通过元数据(如序列号)可将多个IMA文件堆叠成三维图像。专业软件(如ITK-SNAP)能自动识别同目录下的系列IMA文件或读取特殊的三维打包文件,将其重建为三维图像。验证方法:单个IMA的像素数组呈二维(如512×512),多文件组合后形成三维结构(如30×256×256)。
2025-06-26 17:25:38
1719
原创 ROOT 框架常用头文件及类说明文档
摘要:ROOT框架提供了多个核心功能模块的头文件,包含文件操作类(TChain,TFile等)、数据结构类(TList,TObjArray等)、树结构类(TTree,TBranch等)、绘图类(TH1F,TCanvas等)、物理数学类(TRandom,TMath等)以及系统类(TSystem,TInterpreter等)。这些类支持高效的数据处理、物理分析、图形绘制等任务,是进行粒子物理与数据分析的重要工具。掌握这些模块能显著提升ROOT框架的使用效率。
2025-06-20 17:03:02
547
原创 卷积神经网络输入通道和输出通道的确定
输入通道由输入数据决定,输出通道由模型设计者选择。输出特征图的尺寸可以通过公式计算,帮助设计合适的网络结构。
2025-03-25 10:50:47
465
原创 Linux 系统关机和重启指令
## 1. 使用 `shutdown` 命令`shutdown` 命令用于安全地关闭系统,可以设置关机的时间和发送警告信息给用户。- **立即关机**:```bash```或者```bash```- **定时关机**:```bashsudo shutdown -h +[分钟]```例如,30 分钟后关机:```bash```- **发送警告信息**:```bashsudo shutdown -h +[分钟] "警告信息"```
2025-03-24 17:33:16
1132
原创 Geant4中src文件中的核心模块
这些文件共同构成了Geant4模拟的核心框架,每个文件负责不同的功能模块,协同工作以完成复杂的粒子物理模拟任务。通过合理配置和实现这些文件中的类和方法,可以灵活地构建各种物理场景和探测器模型,满足不同的研究和应用需求。
2025-03-24 17:00:57
863
原创 Gate模拟中,模型如何和模块进行连接(即attach操作)
在Gate模拟中,确定模型应该连接到哪个模块,主要取决于模型的层次结构和功能。通常,你会从顶层模块开始,逐步向下连接子模块,确保每个部分都正确地连接到其父模块。通过这种方式,你可以构建一个完整的探测器模型,并确保每个部分都能正确地记录粒子相互作用的数据。
2025-03-24 15:22:49
788
原创 geant4的主要模块及其作用:
这三个模块的任务是管理探测器的几何定义(实体建模及与CAD系统的交互)和实体之间的距离(包括在磁场中)。它使得应用程序的物理过程可以模拟各种行为,在粒子跟踪的每一步,记录粒子的空间位置、时间或随空间和时间的分布。在这个模块中,包含了那些在geant4工具包中最通用的类,数据类型,结构,和常量,同时,它还定义了与第三方软件库的接口,及与系统相关的类型的转换。这些模块的类与事件产生、事件发生器接口,和次级粒子产生有关,它们向粒子跟踪管理类提供被跟踪的粒子。这两个模块用来管理粒子和材料的定义。
2025-03-22 20:42:14
647
原创 使用 CMake 来编译和运行C/C++ 项目流程
这四行代码的完整流程是:创建一个build目录。进入build目录。使用 CMake 生成构建文件(如 Makefile)。使用make根据构建文件编译项目,生成可执行文件。运行生成的可执行文件。这个流程是 C/C++ 项目中非常常见的编译和运行方式,特别是在使用 CMake 作为构建工具的项目中。
2025-03-22 17:56:01
997
原创 Siddon 算法学习中的疑问
这个路径长度可以用于计算射线在该体素中的贡献,例如在 CT 图像重建中,可以将路径长度与体素的密度值相乘,得到该体素对射线的投影值的贡献。代表了射线在两个相邻交点之间穿过的体素中的路径长度对应的参数区间大小。通过这种方式,Siddon 算法能够精确地计算射线在每个体素中的路径长度,从而为图像重建提供准确的数据支持。的范围是从 0 到 1,对应射线的起点到终点的整个路径。的一个取值,通过这个值可以计算出射线在该平面上的交点坐标。的乘积就表示射线在该体素中的实际路径长度。具体来说,射线的总长度。
2025-03-21 21:27:16
398
原创 Siddon算法的公式和参数详细说明
射线起点和终点坐标X1, Y1, Z1:射线的起点坐标,表示射线在三维空间中的起始位置,就像在地图上标记一个出发点,确定了射线开始的地方。X2, Y2, Z2:射线的终点坐标,与起点坐标一起确定了射线在空间中的方向和路径,如同在地图上标记一个目的地,与出发点共同定义了一条路径。射线的参数化表示这里的a是参数,范围从 0 到 1。当a=0时,对应射线起点;a=1时,对应射线终点。通过这个参数化方程,可以计算出射线上任意位置的坐标,就像用一个滑块在射线上滑动,通过改变a的值来确定滑块在射线上的具体位置。
2025-03-21 20:35:48
1339
原创 Python 中list()的用法
list()是 Python 中的一个内置函数,用于创建列表。列表是 Python 中的一种可变序列类型,可以存储任意类型的元素。以下是list()
2025-03-21 15:01:28
671
原创 Bash 脚本基础
Bash 脚本是一种文本文件,其中包含了一系列的命令,这些命令可以被 Bash shell 执行。它用于自动化重复性的任务,提高工作效率。
2025-03-19 16:47:36
1765
原创 mpirun指令使用
mpirun是一个用于启动并行MPI(消息传递接口)程序的命令行工具。它能够管理进程的分布和执行,使得程序能够在多个处理器或节点上并行运行,从而提高计算效率。
2025-03-08 15:00:16
2541
原创 深度学习中关于超参数的解释
例如,在一个回归任务中,如果 L2 正则化系数设置为 0.1,那么模型在训练过程中会适当考虑权重平方和的惩罚项,但如果设置为 1.0,正则化的惩罚会更强,可能会使模型变得过于简单。它首先定义一组超参数的取值范围,例如学习率可以是 [0.001,0.01,0.1],层数可以是 [2,3,4],每层神经元数量可以是 [50,100,200]。例如,在优化一个深度学习模型的超参数时,贝叶斯优化可以根据已经尝试过的超参数组合及其对应的模型性能,预测出哪些新的超参数组合可能具有更好的性能,然后优先评估这些组合。
2025-03-03 19:32:28
885
原创 常见深度学习算法图解笔记
与传统的机器学习方法不同,深度学习模型能够自动从原始数据中提取特征,减少了手动特征工程的需求。深度学习模型通常包含多个隐藏层,这些层可以学习数据的高层抽象和复杂特征。
2025-02-28 13:50:14
567
原创 神经网络中感受野的概念和作用
例如,假设第二层的卷积核大小为 3x3,那么该层每个神经元的感受野会包括前一层两个卷积核覆盖的区域叠加的结果,即对原始输入的感受野可能扩展到更大的范围,具体扩展大小取决于卷积核大小、步幅等参数的设定。例如,一个神经网络从输入层开始依次经过两层卷积层,每层感受野分别为 3x3 和 3x3,那么在第二层的感受野实际对原始输入的感受野可能达到更广范围(例如,假设无池化层或其他因素,可能为 5x5 或更大范围,具体大小需根据卷积参数计算)。:较大的卷积核会在局部区域捕获更多的信息,从而使得相应层级的感受野更大。
2025-02-27 21:15:51
950
【医学影像技术】基于核磁共振原理的磁共振成像技术解析:物理基础、弛豫机制与空间定位方法研究
2025-09-30
Geant4工具包开发者手册中的对象分类与扩展功能设计
2025-03-23
Geant4应用开发者手册:从环境搭建到复杂物理模拟的详细指南
2025-03-23
Geant4探测器模拟工具包中文用户指南:开发、仿真及可视化
2025-03-23
粒子物理模拟工具Geant4的功能、历史及其应用范围介绍(版本11.3)
2025-03-22
核医学成像的软件CASToR中文手册
2024-12-18
python实现核医学osem图像重建算法(使用体模测试)
2024-12-15
GATE官方公共库 GATE(GEANT4 Application for Tomographic Emission)是一个基于GEANT4的蒙特卡洛模拟工具包,专门用于医学物理应用
2024-11-20
第八章 数据获取和处理 核电子学的应用
2024-10-02
第四章 脉冲放大器 核电子学的应用
2024-10-02
核电子学第一章 核电子学的应用
2024-10-02
第十章 核电学课程总结 核电学的应用
2024-10-02
核电子学中的通用标准和系统
2024-10-02
第七章 时间分析 核电子学的应用
2024-10-02
第六章 脉冲幅度分析 核电子学应用
2024-10-02
第五章 堆积判弃电路和基线恢复器
2024-10-02
第三章 前置放大器 核电子学的应用
2024-10-02
第二章 预备知识 核电子学的应用
2024-10-02
先进核燃料与材料 第七章 反应堆其他材料.pptx
2024-09-19
先进核燃料与材料 第三章 材料的性能.pptx
2024-09-19
先进核燃料与材料 第六章 结构材料.pptx
2024-09-19
先进核燃料与材料 第四章 核燃料.pptx.pptx
2024-09-19
先进核燃料与材料 第二章 材料学基础.pptx
2024-09-19
先进核燃料与材料 第五章 包壳材料.pptx
2024-09-19
《先进核燃料与材料》第一章
2024-09-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅