1、集成了八种种群体智能算法:'PPNGA','SFLA','MSFLA','AF-SFLA','PSO','ABC','DEr1','DEb2'%2、顺应度函数开放了一个参数Parmaters,接收本文件Options.Parmaters传递的参数,实例参见m文件F3_Rastrigin.m%3、本程序设置了三个终止条件,终止条件3是必需的;
终止条件1,2是可选的,不需要时隐去代码即可%4、在优化参数设置中,小种群设置与大种群设置各有优势,实际工程问题不一定哪一种设置更好,要根据实验结果来确定%5、在算法参数设置中,缺省设置一般不需要改动,除非在原理上对改动所引起的结果变动有着更深入的理解
2023/3/9 8:33:32 55KB 群体智能算法
1
每一天,人们都淹没在信息的海洋中。
用户在主动获取和被动接受过程中,都始终避免不开一个“效率”的诉求。
在这信息海洋,用户目前面对了什么样的窘境呢?一些设计细节的“隐藏式”、“折叠式”、“渐进式”设计消耗了用户的快速认知诉求;
偏于复杂和庞大的功能,给界面呈现带来了负担,加重了用户操作映射的错乱,让用户理解也模棱两可;
设计过多的操作点击,用户手部肌肉不停运动,切换不同页面去查看;
??作为信息传达的设计师,如何让信息更直观清晰、剔除不确定性理解,是工作中的重中之重。
而“可视化”就是多种高效传递信息方式中的一种,对于信息可视化、视觉化、图形化,也成了设计圈热捧的观点和研究方向。
可视化概述对于产品的可视化
2023/3/5 16:32:35 683KB 高效的设计可视化
1
因工作需求,开发一个dll,支持全屏截图.可以根据参数的传递保存为多种格式.dll功能可以根据需求自行扩展调用方法如下//加载模块HMODULEm_hinst;m_hinst=LoadLibrary(_T("capture.dll"));typedefint(*lpCatureFunc)(LPCSTR,LPCSTR);lpCatureFuncmyFunc;myFunc=(lpCatureFunc)GetProcAddress(m_hinst,"Capture"); myFunc("C:\\MyCapture",".png");myFunc("C:\\MyCapture1",".gif");myFunc("C:\\MyCapture2",".jpg");
2023/3/4 20:41:41 15KB 截图 截屏 图片格式转换 dll开发
1
程序中使用ACCESS数据库来保存数据,使用LabSQL工具包来连接数据库,打开之前请确认安装了这个工具包。
程序一运行时会先弹出密码登录系统,用户名和密码都为“vihome”。
这个程序实现的功能或者说使用到的知识点还是比较多的,主要有以下几种:1,简单的密码登录。
之前已经上传过一个密码登录的程序了,这里只是很简单的一个登录判断,有些会员不了解怎么样从密码程序到主程序的转换,这里是直接调用,如果在密码登录时选择取消,则通过输出错误的方法使主程序不执行而直接退出。
2,简单的错误处理。
会对错误进行提示,发生错误时用户可以选择继续或停止,如果在调试时记录一些经常发生的错误并添加到错误处理程序中,就可以有针对性地进行提示,并对应提出解决方法,这样程序就健壮一些。
3,生产-消费者结构数据采集和保存之间使用生产-消费者结构,二个循环之间通过队列来传递数据,这里还是比较简单的了,只是设置每十个数据作为一组进行保存,实际上使用中有些是需要根据时间来保存的,这些需要自己编程处理一下。
4,通过局部变量或通知来停止并行的循环由于要响应用户菜单操作或其它操作,使用并行循环的结构,这样二者之间需要同步停止,程序里面是使用通知来同步循环的停止的。
5,可以从数据采集卡中采集数据,也可以由软件模拟产生。
考虑到好多会员朋友并没有数据采集卡,程序里面可以设置采集的数据由软件模拟产生,在参数设置的系统参数设置里面,将“实际采集?”选择为“模拟采集”即可,软件一样可以正常运行,数据一样会保存,如果有数据采集卡的,也一样可以从数据采集卡中采集数据。
由于程序不太好,所以采样率和通道号都被固定了,免得出错。
程序中使用到了DAQmx8.5驱动程序,里面也有一些相关的DAQ的VI,如果你没安装DAQmx的话就有一些DAQ的VI找不到,导致程序没有办法运行,可以手动将这些找不到的VI删除掉或者使用禁用结构禁止掉,而在在程序中“参数设置”界面上的“系统参数”那里设置“模拟采集”即可,这样会在软件中模拟采集的数据,其它程序都可以正常运行。
如果装了DAQmx但没有数据采集卡,也要设置成模拟采集,这样程序才能正常运行,否则会出现找不到数据采集卡的报错。
6,波形图表双坐标显示从下图中可以看出四个通道的波形图显件都有二个Y轴,而且这二个Y轴随时都是同步的,这个是通过属性节点来实现的,将第一条Y轴的值写到第二条Y轴上来实现。
7,数据保存到数据库。
之前在常用VI资源区上传过数据写入到数据库的例子,这里的稍微有点不同,将四个通道的数据组成一个字符串(以空格间隔开)后一起写入到一个文本字段下,因为ACCESS的文本字段最长只能有255个字符,所以程序中以十个采样点保存一次,采样率也设置为10。
不知道OLE对象可不可以存储长字符串,如果是在MySQL中是可以保存为BLOB字段的,关于这些可以查找一下对应的资料,这里只是作个演示。
8,控件随窗格缩放程序中的“专利信息.vi”中有这个功能,但这个功能是要在某一个(只有一个)控件占界面绝大部分时才比较好用,然后设置这个控件随窗格缩放,其它控件不需要缩放,这时效果就比较好一点。
如果界面上有二个以上的表格,这个方法就不行了。
9,其它一些功能,比如菜单的禁用/启用、快捷键的实现(通过菜单)、在子程序中修改主界面上的控件值(通过“值”属性节点)等。
程序中的缺点:A,不管是模拟测试还是实际用数据采集卡设置,保存到数据库中时间信息都是不太准了,都是在写入数据库时才读取系统的时间作为数据采集的时间,如果要数据与时间严格保持一致,程序中也使用了发送采集时间的队列,可以从这个队列中读取采集的时间。
B,采集程序中将时间和数据分开二个队列来进行发送,可能不是很好,但也不知道有没有其它更好的方法了,原来也试过将四个通道的波形数据(带时间信息)通过一个队列发送的,但后面接收那里就比较麻烦,最终还是选择现在这样。
C,模拟采集时,如果采集一段时间后停止,不退出程序再次开始采集时,模拟采集的数据就会不准确,因为模拟采集时模拟波形的时间是以当前系统时间加上“初次调用?”来实现的,如果第二次运行时,初次调用输出F,则还是使用第一次运行时停止的时间,这个时间是不准的,解决办法是将“初次调用?”放到采集循环外面来判断是否需要重新对时,而不是放在采集程序里面。
D,好多VI中的说明信息都不够,没来得及写,看以后有没有空补上吧。
E,后来想到用“写一次读多次”的方法,即通过移位寄存器,或者叫功能VI来代替这个簇在各个VI之间传递的话,整个程序的后面板看起来应该会好很多,各个子VI的前面板也不会有很大的簇控件了。
有空
2023/3/4 0:54:48 1.07MB LabVIEW 多通道 数据采集
1
这个是用委托方式演示线程如果传递来自客服端的数据,显示到UI的全过程。
保证没有任何成绩,供学习TCP/IP原理的参考。
2023/2/23 19:15:38 173KB tcpip
1
题目1:自主访问控制实验;
要求:设计必需的界面环境,(1) 对主体、客体、权限进行定义和配置(2) 对主体进行自主授权(3) 对主体的访问权限进行控制实验(4) 对主体进行传递授权的操作,通过实验观察系统的执行情况(5) 对访问成功和不成功的两种情形均给出结果要求:设计必需的界面环境,(1) 对主体、客体、权限进行定义和配置(2) 对角色及角色的层次关系进行定义(3) 对角色的权限进行定义(有承继关系的就不用重新定义)(4) 给出用户-角色多对多关系的配置(5) 对用户的角色信息进行修改,通过访问控制实验,体现不同层次的角色访问权限的差别(6) 对上述实验情况下访问成功和不成功的两种情形均给出结果写的不是很好,仅供参考。
2023/2/21 12:11:29 2.67MB 自主访问控制实验——DAC
1
CreateReactApp入门该项目是通过引导的。
可用脚本在项目目录中,可以运行:yarnstart在开发模式下运行该应用程序。
打开在浏览器中查看它。
如果您进行编辑,则页面将重新加载。
您还将在控制台中看到任何棉绒错误。
yarntest在交互式监视模式下启动测试运行器。
有关更多信息,请参见关于的部分。
yarnbuild构建生产到应用程序build文件夹。
它在生产模式下正确捆绑了React,并优化了构建以获得最佳功能。
生成被最小化,并且文件名包括哈希值。
您的应用已准备好进行部署!有关更多信息,请参见关于的部分。
yarneject注意:这是单向操作。
eject,您将无法返回!如果您对构建工具和配置选择不满意,则可以随时eject。
此命令将从您的项目中删除单个生成依赖项。
而是将所有配置文件和传递依赖项(webpack
2023/2/20 21:37:07 3.73MB JavaScript
1
SignalNow:无服务器信令和实时消息传递SignalNow是使用和构建的实时信令服务。
SignalNow的次要功能:无服务器。
借助AzureFunctions和SignalR进行实时,轻松地扩展。
使用,,以及基于密钥的机制进行集成身份验证的可扩展身份验证。
如何开始(.NETCore2.2,Unity2018.3+)。
部署到Azure最小的C#示例usingSystem;usingMicrosoft.SignalNow.Client;stringgraphName="signalnowkey";//Use"graph.microsoft.com"forAzureActiveDirectory(AAD)andMicrosoftGraph,or"github.com"forGitHubstringuserName="vlad";//or"vladkol@microsoft.com"forAAD,or"vladkol"forGitHubstrin
2023/2/20 1:46:11 5.77MB real-time azure azure-functions signalr
1
首先要理解基本的原理,2台电脑间实现TCP通讯,首先要建立起连接,在这里要提到服务器端与客户端,两个的区别通俗讲就是主动与被动的关系,两个人对话,肯定是先有人先发起会话,要不然谁都不讲,谈什么话题,呵呵!一样,TCPIP下建立连接首先要有一个服务器,它是被动的,它只能等待别人跟它建立连接,自己不会去主动连接,那客户端如何去连接它呢,这里提到2个东西,IP地址和端口号,通俗来讲就是你去拜访某人,知道了他的地址是一号大街2号楼,这个是IP地址,那么1号楼这么多门牌号怎么区分,嗯!门牌号就是端口(这里提到一点,我们访问网页的时候也是IP地址和端口号,IE默认的端口号是80),一个服务器可以接受多个客户端的连接,但是一个客户端只能连接一台服务器,在连接后,服务器自动划分内存区域以分配各个客户端的通讯,那么,那么多的客户端服务器如何区分,你可能会说,根据IP么,不是很完整,很简单的例子,你一台计算机开3个QQ,服务器怎么区分?所以准确的说是IP和端口号,但是客户端的端口号不是由你自己定的,是由计算机自动分配的,要不然就出现端口冲突了,说的这么多,看下面的这张图就简单明了了。
在上面这张图中,你可以理解为程序A和程序B是2个SOCKET程序,服务器端程序A设置端口为81,已接遭到3个客户端的连接,计算机C开了2个程序,分别连接到E和D,而他的端口是计算机自动分配的,连接到E的端口为789,连接到D的为790。
了解了TCPIP通讯的基本结构后,接下来讲解建立的流程,首先声明一下我用的开发环境是VisualStudio2008版的,语言C#,组件System.Net.Sockets,流程的建立包括服务器端的建立和客户端的建立,如图所示:二、实现:1.客户端:第一步,要创建一个客户端对象TcpClient(命名空间在System.Net.Sockets),接着,调用对象下的方法BeginConnect进行尝试连接,入口参数有4个,address(目标IP地址),port(目标端口号),requestCallback(连接成功后的返调函数),state(传递参数,是一个对象,随便什么都行,我建议是将TcpClient自己传递过去),调用完毕这个函数,系统将进行尝试连接服务器。
第二步,在第一步讲过一个入口参数requestCallback(连接成功后的返调函数),比如我们定义一个函数voidConnected(IAsyncResultresult),在连接服务器成功后,系统会调用此函数,在函数里,我们要获取到系统分配的数据流传输对象(NetworkStream),这个对象是用来处理客户端与服务器端数据传输的,此对象由TcpClient获得,在第一步讲过入口参数state,如果我们传递了TcpClient进去,那么,在函数里我们可以根据入口参数state获得,将其进行强制转换TcpClienttcpclt=(TcpClient)result.AsyncState,接着获取数据流传输对象NetworkStreamns=tcpclt.GetStream(),此对象我建议弄成全局变量,以便于其他函数调用,接着我们将挂起数据接收等待,调用ns下的方法BeginRead,入口参数有5个,buff(数据缓冲),offset(缓冲起始序号),size(缓冲长度),callback(接收到数据后的返调函数),state(传递参数,一样,随便什么都可以,建议将buff传递过去),调用完毕函数后,就可以进行数据接收等待了,在这里因为已经创建了NetworkStream对象,所以也可以进行向服务器发送数据的操作了,调用ns下的方法Write就可以向服务器发送数据了,入口参数3个,buff(数据缓冲),offset(缓冲起始序号),size(缓冲长度)。
第三步,在第二步讲过调用了BeginRead函数时的一个入口参数callback(接收到数据后的返调函数),比如我们定义了一个函数voidDataRec(IAsyncResultresult),在服务器向客户端发送数据后,系统会调用此函数,在函数里我们要获得数据流(byte数组),在上一步讲解BeginRead函数的时候还有一个入口参数state,如果我们传递了buff进去,那么,在这里我们要强制转换成byte[]类型byte[]data=(byte[])result.AsyncState,转换完毕后,我们还要获取缓冲区的大小intlength=ns.EndRead(result),ns为上一步创建的NetworkStream全局对象,接着我们就可以对数据进行处理了,如果获取的length为0表示客户端已经断开连接。
具体实现代码,在这里我建立了一个名称为Test的类:2.服务
2023/2/17 5:19:13 297KB TCP/IP C++ 协议
1
简单的android基于TCP通信的实例,基于androidstudio开发。
适合老手参考实例。
实现功能:基于TCP实时通信实时显示在线用户信息,用户之间消息传递。
server可以实时监控/控制client的信息。
2023/2/16 2:38:18 14.59MB android java TCP通信
1
共 592 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡