#include "iostream" using namespace std; class Matrix { private: double** A; //矩阵A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //为向量b分配空间并初始化为0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //为向量A分配空间并初始化为0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析构中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"请输入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"请输入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"个:"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分别求得U,L的第一行与第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分别求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"计算U得:"<<endl; U.Disp(); cout<<"计算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
标签: 道理特分解法
上传时间: 2018-05-20
上传用户:Aa123456789
电子电路单片机设计毕业设计论文资料软硬件设计50例资料合集资料0652、14093组成的脉宽调制器电路(电机调速).rar0653、CMOS单通道调制电路.rar0654、DC-AC变换器.rar0655、DC-AC变换器LCD显示电子温度计.rar0656、DC-AC变换器PWM控制式电机速度控制电路.rar0657、DC-AC变换器TC4069UB组成的方波振荡器.rar0658、DC-AC变换器按钮型游戏基准电路.rar0659、DC-AC变换器变形多谐振荡器.rar0660、DC-AC变换器标准多谐振荡器.rar0661、不规则变换循环LED闪烁电路.rar0662、采用3524的PWM式电机速度控制电路.rar0663、超声波鱼缸加氧器.rar0664、车辆转向灯电路.rar0665、出租车空车灯LED环形闪烁电路.rar0666、触摸调光灯.rar0667、触摸开关.rar0668、触摸控制定时器.rar0669、触摸控制转换开关.rar0670、串联式多谐振荡器.rar0671、串入式声控延时开关.rar0672、单结晶体管多谐振荡器.rar0673、单脉冲控制转换开关.rar0674、单脉冲控制转换开关基本电路.rar0675、单稳态多谐振荡器.rar0676、单稳态多谐振荡器组成的定时器电路.rar0677、单轴操纵杆接口电路.rar0678、低电平输出光控电路.rar0679、第三刹车灯电路.rar0680、电场与漏电检测器.rar0681、电动车充电自动控制电路.rar0682、电话机检修测试仪.rar0683、电话检修仪.rar0684、电子节拍器.rar0685、电子锁.rar0686、电子音乐门铃.rar0687、短波无线监听发射器1(100MHz).rar0688、短波无线监听发射器2(100MHz).rar0689、短路检测式报警电路.rar0690、断线检测式报警电路.rar0691、断线式防贼报警电路.rar0692、断续音报警信号发生器.rar0693、多功能密码锁.rar0694、多谐—张弛振荡器.rar0695、发射极耦合式多谐振荡器.rar0696、方波发生器.rar0697、非对称多谐振荡器.rar0698、峰谷用电定时器.rar0699、改进型发射极耦合式多谐振荡器.rar0700、改进型模拟PUT(可编程单结晶体管)器件振荡器.rar
上传时间: 2021-12-10
上传用户:
本文对PWM全桥软开关直流变换器进行了研究。具体阐述了PWM全桥ZS软开关直流变换器的工作原理和软开关的实现条件,就基本的移相控制FB ZVS PWM变换器存在的问题给予分析并对两种改进方案进行了研究:1、能在全部工作范围内实现零电压开关的改进型全桥移相zvs-PWM DCDC变换器,文中通过对其开关过程的分析,得出实现全负载范围内零电压开关的条件。采用改进方案设计了一台48V~6 VDC/DC变换器,实验结果证明其比基本的 ZVS-PWM变换器具有更好的软开关性能。2、采用辅助网络的全桥移相 ZVZCS-PWM DCDC变换器,文中具体分析了其工作原理及变换器特性,并进行实验研究随着电力电子技术的发展,功率变换器在开关电源、不间断电源、CPU电源照明、电机驱动控制、感应加热、电网的无功补偿和谐波治理等众多领域得到日益广泛的应用,电力电子技术高频化的发展趋势使功率变换器的重量大大减轻体积大大减小,提高了产品的性能价格比,但采用传统的硬开关技术,开关损耗将随着开关频率的提高而成正比地增加,限制了开关的高频化提高功率开关器件本身的开关性能,可以减少开关损耗,另一方面,从变换器结构和控制上改善功率开关器件的开关性能,可以减少开关损耗。如缓冲技术、无损缓冲技术、软开关技术等软开关技术在减少功率开关器件的开关损耗方面效果比较好,理论上可使开关损耗减少为零。12软开关技术的原理和类型功率变换器通常采用PwM技术来实现能量的转换。硬开关技术在每次开关通断期间功率器件突然通断全部的负载电流,或者功率器件两端电压在开通时通过开关释放能量,这种方式的工作状况下必将造成比较大的开关损耗和开关应力,使开关频率不能做得很高。软开关技术是利用感性和容性元件的谐振原理,在导通前使功率开关器件两端的电压降为零,而关断时先使功率开关器件中电流下降到零,实现功率开关器件的零损耗开通和关断,并且减少开关应力。
标签: 移相全桥
上传时间: 2022-03-29
上传用户:jason_vip1
最完整的基于stm32的3轴云台开源程序EvvGC,包含MPU6050检测加速度和陀螺仪,并对3轴的3个电机进行控制
标签: stm32
上传时间: 2022-05-19
上传用户:jason_vip1
随着科技的不断发展以及社会的不断进步,劳动密集型的产业构造向技术密集型的产业构造的转变,大量的消费环境以及销售环境的变化,要求新的流通渠道产生,而超市、百货购物等传统渠道和方式的人工成本费用较高,加之场地的局限等因素,自动售货机系统应运而生,目前自动售货机的特点是科技含量高,24小时服务,方便且不需要人工看管,但支付方式过于单一,仅能收取硬币和小额纸币,同时传统的自动售货机不能联网,运营者无法实时的获得售卖信息,这会大大降低自动售货机工作的效率,并给维护带来了很多不便,随着支付方式的多元化发展,自动售货机将由单一的支付方式向多元化的支付方式发展。 本文介绍了实现微信支付功能现有的方案,对各方案的优缺点进行了阐述并提出了一种基于 STM32单片机的支持纸币、硬币、微信支付的多元化支付方式,并可以通过互联网实时上传售卖信息的低成本的自动售货机控制系统。该方案不仅实现了微信支付功能,同时也降低了硬件成本。本文研究了通过RS-232通信接口控制 DTU与服务器进行数据通信实现售卖信息的上传和微信支付功能,并对发送的数据进行 DES加密,对接收的数据进行解密后进行二维码的编码处理,使用 MDB多点总线协议对纸硬币识别器进行控制,并使用RS-485通信接口对电机进行控制。通过实现自动售货机支付方式的多元化和售卖信息的实时上传,大大提高了自动售货机运行的效率,降低了自动售货机维护的成本。
标签: stm32
上传时间: 2022-05-28
上传用户:
#define PI (3.14159265)// 度数表示的角速度*1000#define MDPS (70)// 弧度表示的角速度#define RADPS ((float)MDPS*PI/180000)// 每个查询周期改变的角度#define RADPT (RADPS/(-100))// 平衡的角度范围;+-60度(由于角度计算采用一阶展开,实际值约为46度)#define ANGLE_RANGE_MAX (60*PI/180)#define ANGLE_RANGE_MIN (-60*PI/180)// 全局变量pid_s sPID; // PID控制参数结构体float radian_filted=0; // 滤波后的弧度accelerometer_s acc; // 加速度结构体,包含3维变量gyroscope_s gyr; // 角速度结构体,包含3维变量int speed=0, distance=0; // 小车移动的速度,距离int tick_flag = 0; // 定时中断标志int pwm_speed = 0; // 电机pwm控制的偏置值,两个电机的大小、正负相同,使小车以一定的速度前进int pwm_turn = 0; // 电机pwm控制的差异值,两个电机的大小相同,正负相反,使小车左、右转向float angle_balance = 0; // 小车的平衡角度。由于小车重心的偏移,小车的平衡角度不一定是radian_filted为零的时候
上传时间: 2022-06-01
上传用户:
概述CK3866S 是一款工业级 120 度电角度有感三相直流无刷电机驱动控制 IC ,集成限流控制, 过流保护,堵转保护,软换向,缓启动可调,其外围电路简单,低成本,应用方便;配合不同 的 MOSFET 和电源电路,可以适配各种电压及各种功率的电机;芯片集成过流保护,堵转保护, 限流驱动等多种保护控制机制。 特性 工作电压范围:2.5V~5.5V 适用于有霍尔电机 缓启动速度调节 转速信号输出 过载保护 限流驱动 堵载保护 工作温度范围:-40~85 度 正反转转向控制 转向软换向控制 缓启动功能 转速调节(0.03VDD~VDD 线性调节) SOP16 无铅封装
上传时间: 2022-06-15
上传用户:XuVshu
概述 是一款三相直流无刷无霍尔电机驱动控制 ,其外围电路简单,低成本,应用方 便;驱动方式具有效率高,噪音小等特点,芯片集成过载保护、堵转保护、低压保护等多种保 护机制,产品的安全可靠性高。特性工作电压范围: 3.8V~5.5V 工作温度范围:-40 ~85 度 适用于无霍尔电机 正反转转向控制 启动力矩调节 启动换向周期调节 软换向转向控制 转速信号输出 过载保护 恒流驱动 堵转保护 故障保护 缓启动功能 转速调节( 0.2VDD~VDD 线性调节) 无铅封装 SOP16
上传时间: 2022-06-15
上传用户:ttalli
一种新颖的正弦正交编码器细分方法摘要,提出了一种不用查询表的正弦正交编码器细分方法利用控制系统临界稳定原理生成一个高频数字正弦载波与采样得到的正弦编码信号实时比较来获取相位信息,与传统查询表细分方法相比,节省了大量的存储空间而且整个细分过程通过软件实现,不需要添加额外的硬件,同时阐述了影响细分分辨率的因素,推导出了防止电机高速运行时细分混登的条件;最后,以一台7kw的电梯用永磁同步电机配套海德汉的ERN487-2048正弦增量式编码器为平台,验证了该细分方法用于转子初始位置识别及速度控制的可行性.关键词,正弦编码器,细分,永磁同步电机,电梯,转子初始位置随着社会的发展人们对电梯的体积载重量功耗调速精度及调速范围等提出了越来越高的要求永磁同步电机以功率密度大气隙密度高转矩电流比高转矩惯量比大寿命长及结构简单等优点成为无齿轮电引机的首选 对于正弦波永磁同0步电机矢量控制系统坐标变换中的转子位置角是否能准确实时地检测直接影响到整个系统的性能因此高性能要求的系统一般采用分辨率高的光电式编码器检测转子位置.
标签: 正弦正交编码器
上传时间: 2022-06-18
上传用户:
四轴起飞时,发出触发信号使导航模块开始工作,同时读取ICM20602的加速度计、陀螺仪数据,对数据卡尔曼滤波后姿态解算,对角度与角速度采取串级PID调节。控制系统算法设计主要有ICM20602滤波算法,姿态解算算法、串级PID控制算法和定高部分控制算法。碍于篇幅所限,下面介绍最重要的串级PID控制算法和定高部分控制算法。地理坐标系中重力的水平分量为零,仅用三轴陀螺仪和三轴加速度计无法计算出航向角,由于巡线机器人保持稳定飞行只需要横滚角(roll)和俯仰角(pitch),所以四元数转换成欧拉角。定高控制算法采用的是增量式PID控制,定高控制的输出最后与姿态控制的输出叠加到四个电机的控制中。数据滤波使用的是低通滤波,采用近三次的平均值。为了防止姿态对激光测距的影响及减小高度控制对姿态控制的干扰使用欧拉角来校正高度值,即Hight=(float)Hight*(cos(roll)* cos(pitch))。将四元数转换后的欧拉角与陀螺仪测出来的角速度进行串级PID控制,其中欧拉角作为外环,角速度作为内环。外环的PID以及内环的PD设定值为测试数据值。由于内环的角速度控制不需要无静差,所以内环采用PD控制,为防止测量的误差造成较大影响,外环积分需要限幅。
标签: 传感器
上传时间: 2022-06-24
上传用户:默默