自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zcsor的专栏

写博客,就是我做的公益。

原创 Arduino之有限状态机

一直在完善之前的全自动鱼缸。在开发过程中遇到各种各样的问题:3D模型设计、硬件设计、电路设计、走线、HMI程序、ESP8266程序、Arduino程序……有时候一个东西重新设计两三次,有的时候重新3D打印两三次,因为才疏学浅所以会各种困难吧。好在硬件和软件都进入最后测试阶段(电导率传感器只在面包板...

2020-05-07 17:01:58 82 0

原创 Arduino 浊度传感器 TS300B 的使用

最近在捣鼓一个好玩的东西——全自动鱼缸。从构思到现在各种传感器、控制器的代码、执行器、鱼缸傻傻的捣鼓的差不多一个月了。这过程中也走了一些弯路,脑阔疼……今天3D打印机趴窝了,脑阔更疼咯……正好在凌乱的桌面上看到了这个浊度探头,之所以说探头,就是因为某宝上买的时候只买了一个探头,没买转换模块…… ...

2020-04-19 23:28:04 347 0

原创 高中通用技术考点解析——1-3体验设计实践设计

一、写在前面: 这一章的内容更侧重于设计的基本过程,包含从确定课题到产品使用说明书的方方面面。三视图作为一个难点内容,但是考察时主要是对应关系,尺寸标注的“基本错误”,比例尺对数字标注的影响(没影响)。但是,有很多内容也是涉及到“能力”方面的,包括调查问卷的统计分析,各种技术语言(草图、效...

2020-02-25 14:32:28 68 0

原创 高中通用技术考点解析——1-2步入设计殿堂

写在前面: 考试是上机考,多数都是单选,也有判断和三两个多选。所以命题分析起来还是很简单的,不像信息技术主客观加操作,但是信息技术考了好多年,底子比较厚,各种考点、“模拟题”都emmmmm非常非常非常到位,而且学生学习实践的多,课程足。通用么,呵呵,都是半路出家,很多人还多职兼任,所以真正...

2020-01-25 13:22:09 121 0

原创 高中通用技术考点解析——1-1走进技术世界

写在前面: 坐标山东,教材地质老版。教了若干年,博主自认水平非常一般——和大家认为的一样一样的^ ^。这方面能拿得出手的只有过关率了。 所总结的考点,都是经过实践检验的;所叙述的考点,都是博主想起来啥大白话就用啥大白话说的,错误或不准确的地方,博主不会改的←_←。 1、...

2020-01-11 19:32:35 73 0

原创 放苹果递推详图

2019-12-25 21:47:53 32 0

原创 1003:对齐输出cout解

【题目描述】 读入三个整数,按每个整数占8个字符的宽度,右对齐输出它们,按照格式要求依次输出三个整数,之间以一个空格分开。 【输入】 只有一行,包含三个整数,整数之间以一个空格分开。 【输出】 只有一行,按照格式要求依次输出三个整数,之间以一个空格分开。 #include<bi...

2019-12-15 20:18:02 56 0

原创 我家的门牌号题解

各位的题解都从自家门牌号数,俺不,俺从最大门牌号数^ ^,看着代码好像少好几行。 #include<bits/stdc++.h> using namespace std; int main(){ int n,cnt=1,sum=1; cin>>n; //su...

2019-12-09 22:06:22 44 0

原创 Vigenère密码题解——加解密一体

#include<bits/stdc++.h> using namespace std; char m_en(char x,char y); char m_de(char v,char y); int main(){ string key,val; int kp=0; ge...

2019-12-08 14:09:30 20 0

原创 制作一个USB可燃气体声光报警器

手头有一些闲置的模块和小电路板,选了几件做了一个科技小制作。利用Nano做核心,MQ9可燃气体检测模块做传感器,接上一个蜂鸣器和LED就可以制作这个报警器了。 一、硬件连接 电路图就是这样的咯,将MQ9的传感器朝右,蜂鸣器的喇叭朝上,MQ9左侧的是LED,上面是正极,VIN和GND引出方便...

2019-10-09 16:36:18 80 0

原创 OpenCV双目测距——手工选择匹配点测试

和上一篇一样,首先简单介绍一下使用OpenCV的范例代码来进行双目标定。我所使用的版本是3.x,4.x差别不大。 一、stereo_calib.cpp的使用 需要说明的是各个参数,标定板棋盘格上黑白方块交点的横向个数为w,纵向个数为h。s为每个格子的宽度,这个宽度很容易在ps或者wor...

2019-05-16 09:14:39 752 0

原创 简述VB.NET中用OPENCV来处理摄像头拍摄图像的畸变

这几天在做一个双目视觉的东西,要达到深度识别0.1mm以内,没深入过这方面的东西,边学边记录。所以,这一篇代码非常简单和粗鄙,甚至需要你自己修改很多东西才能运行。 使用OPENCV来进行矫正图像,首先要得到两个矩阵:相机矩阵、畸变矩阵。然后使用InitUndistortRectifyMa...

2019-05-08 16:27:45 551 0

原创 【Arduino和高中通用技术】——十一、BF1K-3AA系列电阻式压力应变片、HX711压力传感器和另一种按键去抖动方法

一、压力应变片 电阻式压力应变片比一些体重秤上使用的电压式压力应变片精度要高,但是成品的压力模块往往动辄几百元而且形态不能满足我们的各种“奇葩”应用。而这种裸片价格便宜,所以在最近一个小制作中使用了这种应变片,它的缺点也非常明显:非常脆弱,连接方式度娘也不很清楚。如果你不介意它如此脆弱需要用...

2019-03-27 08:20:53 1579 3

原创 【Arduino和高中通用技术】——十、一个简单的环境监测

有几天没写了,这次写一个完整的例子——环境监测。它包含温湿度、火焰、可燃气体检测,并发送数据到乐为网。乐为网用起来比OneNet(中国移动物联网平台)要简单很多,只是很多功能是收费的,但是不用自己开发APP只需关注公众号就可以接收到消息,图简单玩玩体验一下可以尝试。 一、硬件 1、Arduin...

2019-03-12 20:30:24 189 0

原创 【Arduino和高中通用技术】——九、使用SW来设计模型

        之前购买了一个三角洲3D打印机,恰好这个学期又回到通用技术科目教学,给同学们制作了一些模型和礼物。这里只列举一个,在《技术与设计1》中三视图部分是一个教学的难点,课本上的多功能铅笔盒的三视图绘制起来有一定难度,所以制作了3D模型并打印了一些(在此感谢各班的班长每次帮我回收模型,尤其...

2019-02-24 14:30:18 333 0

原创 【Arduino和高中通用技术】——八、一个“科技小制作”

        这是之前制作的一个小作业——音乐喷泉。喷泉的高低和喷射时间随着音符的高低长短而变化,配以随机的RGB LED灯光效果对于一个科技小制作来说还是很好的。 一、硬件准备 1、Arduino uno 2、12V水泵(即使你有5V的也要使用另外的MOS管模块等进行驱动,请查看Ardu...

2019-02-24 13:58:57 2333 2

原创 【Arduino和高中通用技术】——七、使用ESP8266

        今天,我们谈的多一些。因为ESP8266本身是一个功能非常丰富的模块,所以涉及到的内容相对也比较多。我手头有一块Wemos D1模块,还有几个不同型号的ESP8266模块,一般我会在Wemos D1上测试代码,而实际使用时一般使用ESP-01(S),原因在于ESP01焊接一组双排的...

2019-02-17 21:58:10 151 0

原创 【Arduino和高中通用技术】——六、持久保存的配置、使用外部库

        Arduino提供一种功能,把信息持久的保存在EEPROM中,直到它死信息可能还在。要使用这一功能,首先需要引用外部库: #include &lt;EEPROM.h&gt;         这样,就可以使用EEPROM的相关函数把信息永远留在它的脑袋里——即使...

2019-02-13 09:13:15 182 0

原创 【Arduino和高中通用技术】——五、外部中断、按键

        如果你熟悉WINDOWS中断(IRQ)那么这段理论介绍可以忽略。就像WINDOWS中断一样,Arduino也支持中断,主要包括外部中断、时钟中断,串口事件处理程序也可以被看作一种中断。 一、什么是硬件中断         举一个栗子,这天我们正在外面吃饭,手机响了拿出来一看是老...

2019-02-12 11:12:38 1352 0

原创 【Arduino和高中通用技术】——四、摘自For violin的一部分,tone函数

        在Arduino中,有很多函数和库,tone就是其中一个,这个函数可以模拟不同的频率从而使蜂鸣器发出不同的声音。曾经,在课堂上展示过一个7个按键的小品,但是由于时间关系没有作代码检查,最后一个音高出实际100hz,真是遗憾。         由于没有更多的硬件,所以只演示了ton...

2019-02-11 18:02:24 521 0

原创 【Arduino和高中通用技术】——三、使用光照强度传感器

        这一篇介绍一个简单的传感器——光照强度传感器模块,它基于光敏电阻制造。使用传感器或者复杂的输出器件时,首先我们应该阅读它的文档,看一下它是否支持Arduino,如何使用,与类似产品对比哪种能更好的满足我们的需求。性价比往往是一个重要的衡量标准。         之前一篇我们介绍了...

2019-02-10 22:03:00 3139 3

原创 【Arduino和高中通用技术】——二、认识PWM输出

        上一篇介绍了使用板载LED的闪烁灯实验,使用的是IO端口13,这个端口与板载LED相连也进行了引出。这一篇介绍一下板子上编号之前带有波浪线(~)的端口,这些端口可以用作PWM输出,所谓PWM输出是指脉冲宽度调制,假定IO口3上面输出的电压最大值达到5V,那么如果我们在单位时间内不断...

2019-02-09 16:28:26 187 0

原创 【Arduino和高中通用技术】——一、综述和第一个范例

        很久没写博客,因为没有精力,也没什么心情。从今天开始拿出一部分精力写一个系列——Arduino和高中通用技术,尽可能每天更新。Arduino使用C语言来进行编程,它有若干IO既输入输出端口,可以接受数字或模拟信号输入输出,也支持很多通讯协议。当然,不同的版本端口个数等有一定的区别。...

2019-02-08 13:20:01 228 0

原创 一种AS3下对SOUND对象进行整体、快速采样的方法

最近也没什么写点东西的想法,也都没有什么新意。娃的外语辅导班开课了,发了本教材,打开配套光盘一看,心中立马奔过一万只神兽…………CD,音轨,1995年?这不是发错教材让老夫重修吧,那个年代老夫也上高中了,有点晚啊!好吧,自己动手丰衣足食,用个FLASH吧反正最近比较闲比较闲。开始倒没什么,搞个li...

2017-09-15 18:35:40 350 1

原创 另一种修改在线SWF的方法

这次公开的这种方式有一定的局限性,通过努力可以克服。它也有一定的优越性。与以前所用的内存搜索和局部修改不同,这种方式不仅可以局部修改,也可以完全重新编译而不受文件大小的限制。推而广之,这种方法可以替换很多东西而不仅限于SWF,凡是从服务器申请来的都可以。当然,缓存是一个问题,前面也说过,通过努力都...

2017-02-24 23:21:44 4094 0

原创 【五子棋AI】清月连珠——开源

经过差不多两年的业余时间学习和编写,最近把清月连珠的无禁手部分完善得差不多了。这中间进行了很多思考,也有很多错误认识,到现在有一些东西还没有全面掌握,所以想通过开源于大家共同交流。       最近一直发表一些五子棋AI技术相关的内容,其中也有很多错误,现在整理起来,并且进行详细介绍的同时把清月连...

2013-10-22 21:00:22 2150 7

原创 【五子棋AI】多线程——多线程PVS

对于多线程搜索这方面,我没有太多的认识,而MTDF算法在我的程序中表现不如PVS,尤其是最后一层(以前未搜索过)很可能卡住,很让人恼火。所以只能采用多线程的PVS,多线程PVS需要在原有的搜索函数的基础上,分离一个根节点搜索函数。在根节点处,把整个树砍成CPU核心个数个,然后进行搜索并汇总结果。虽...

2013-10-09 22:46:23 2035 0

原创 【五子棋AI】启发算法——PV与杀手启发

经常见到的是杀手启发。它用一个arr(maxdepth)(1)指记录PVS的最佳节点,当arr(curdepth)(0)无记录时记录到其中,如果有并且不与arr(curdepth)(0)相同,则arr(curdepth)(1)=arr(curdepth)(0)然后再记录到arr(curdepth)...

2013-10-09 22:30:32 2025 0

原创 【五子棋AI】启发算法——开局库

开局库不是我自己制作的,是在网上下载的“十四地毯普”,然后我把它解析出来,去掉无用信息,进行压缩作为资源放在软件中。因为是执黑必胜的地毯,所以软件执白时很少用到开局库,除非开局库中的局面被证明是好局面(其实无禁手来讲,黑棋控盘稍强白棋就没有好局面——即使在地毯普中)。         下面说一下解...

2013-10-09 22:12:51 3589 0

原创 【五子棋AI】启发算法——VCF/VCT搜索

今天把VCT改成了“全面VCT”,即可以解决全部VCT局面(当然,做棋不在其中,我也不打算写做棋的代码,但这不代表做棋不存在于软件当中,后面会介绍),然后灵光一闪,发现了PVS搜索时快速找到对方VCT/VCF的方法(之前只能快速找到自己的),理论上只需要十几行代码就可以了,具体实施还没做。    ...

2013-10-09 21:45:44 4263 0

原创 【五子棋AI】启发算法——主要变例搜索

刚才发现VCT算法有一处BUG,导致有些VCT局面解不出来,已经修复了,并且增加了置换表利用度。估计这个修复会提高不少棋力,毕竟VCT是非常重要的获胜手段。其实VCT是走法的一个子集,VCF是VCT的一个子集,有些软件还有VC2,我还没有尝试扩大VCT这个集,扩大之后可以预见会增加非常多的搜索,但...

2013-10-09 20:56:12 1702 0

原创 【五子棋AI】启发算法——置换表

置换表技术非常有用,没有一个棋力较高的程序不使用置换表。它记录了搜索过的局面当中的最佳评分和走法,下次搜索时遇到相同局面就直接返回而不进行搜索,这无疑是效率非常高的办法。它可以提高效率非常多,虽然在我的代码里命中率很高但只提高了10%左右的效率,但有测试表明它能提高30%甚至更多。其实,10%已经...

2013-10-08 09:19:44 4135 0

原创 【五子棋AI】启发算法——迭代加深与内部迭代加深

α—β剪裁函数会一直搜索到指定深度然后返回,但是当走法生成器生成较多走法或深度设置较深时,往往会导致较长时间无法返回,从而无法进行较为准确的时间控制——因为如果即时返回,我们还没有得到结果,很尴尬的说。于是我们可以尝试搜索较浅的深度,然后返回一个值,如果没有胜利,那么尝试更深的深度。这样配合局面评...

2013-10-08 09:06:30 2064 0

原创 【五子棋AI】AI的基本结构——剪裁函数

剪裁函数有很多形式,像极大极小值、负极大值等等,我的程序采用的是应用广泛的α—β剪裁。α—β剪裁有很多变种,我采用了超出边界的α—β剪裁。与象棋引擎或其他五子棋软件不同的是,我使用了&HFF作为非法坐标,而没有使用0(哎,失策啊)。对于博弈树搜索算法如果你还不了解,可以到xqbase.co...

2013-10-06 22:21:02 1153 0

原创 【五子棋AI】AI的基本结构——招法生成器

在五子棋中,招法的生成其实“很容易”凡是没有子的点都是招法点,但这样做无疑是“低效”的,有很多文章(包括我前期的代码)都采用了“临近点”搜索的策略,例如下子H8之后,搜索周围5格以内的空点,但这也存在问题:随着棋子量的增多尤其是冲4然后对方堵死的情况,这种“棋盘剪裁”将迅速扩大搜索范围。经过观察我...

2013-10-06 21:43:01 1734 0

原创 【五子棋AI】AI的基本结构——局面表示

无论是写界面程序还是写AI,最基本的东西都是局面表示。局面表示用于: 1、显示界面 2、评估局势            即局面评估,记录棋局的方式要有利于更快的给出局面评估(一个整数,用来表示对谁更有利)。 3、产生招法            根据局面表示,至少要能够知道哪些位置已经有子,对于五子...

2013-10-06 20:55:07 1818 0

原创 【五子棋AI】一、AI概述

为了写一个棋力比较强的AI,至今大约学习了一年多,在这一年里我翻阅了大量的网站、论文、源码。最初的打算是写一个象棋的AI,后来发“http://xqbase.com”有很多资料和开源的“象眼”、“象棋巫师”,于是改变了自己的初衷——当时给我的感觉,象棋巫师已经很不错了,当然现在也是这样。所以,如果...

2013-10-06 18:01:54 5135 2

原创 【一种基于灰度差的模板匹配】

自从在http://www.cnblogs.com/zcsor上写了一点东东就很久很久没有在CSDN的博客上写东西了。这篇所说的都是基于VB.NET的。还是从最基础的东西说,“高级”的带旋转啥的的,大家都不说,我也就不要说,免得挨骂,毕竟我不是指望这个糊口的。先从最最基本的开始:一、白底上绘制几个...

2010-02-25 20:38:00 2003 0

原创 也谈VB.NET中心旋转图像

今天在网上看有些人的文章,很是不怎么样。实在忍不住了。 简单的写了一下下。   鼠标拖拽旋转。任意角度。。  Public Class Form1    Dim bmp As Bitmap    Dim bmpsize As Single    Dim gr As Graphics    Dim ...

2008-10-16 21:23:00 6202 1

原创 验证码&游戏外挂与图像识别——ANN

前面一篇写了关于简单的字符分离和特征提取,实际上,如果仅仅写个记牌器,那上篇识别出的特征直接用作牌面识别即可,根本无需进一步的工作——利用人工神经网络识别,但毕竟是为了完成前面的网页文章,还是写一下这个网络,因为验证码经处理后,可不会那么“老实”的每次都一模一样,我们需要的是神经网络来识别这些家伙...

2008-07-02 16:56:00 5618 1

提示
确定要删除当前文章?
取消 删除