此类传感器太多了,你要告诉我们 你想测量的距离是多少。
你就直接到百度搜索: 中距离红外传感器 能找到很多很多很多
不光是传感器,直接成型的 红外计数器 计数相同也有啊
--补充
按照你说的方式,成本不会很高,技术不是很复杂。关键在于可行性。
准确率不是很高,两只鸡如果挨得比较近可能识别不出来,需要有很多技巧。
可以反复的调试,。红外的探测器也就是几百块 别单片机了,太麻烦,直接进计算机,将麻烦都放到软件里面去
-- 自己做也成,单片机部分 实际上也不是很复杂 但是 我是担心 一点都不会的 去动手做 太复杂了。
你可以到网络上搜索1下 看没有 类似的成品 应该有的。
下面是单片机计算程序,红外传感器你可以用普通的红外对管来代替,一个发射,一个接收,肉鸡通过时光被挡住,可以一式。
至于你说的这种,难度太高,估计很难做到,即使有,也会非常贵。不经济。
#include
sbit P10=P1^0; //第0位数码管
sbit P11=P1^1;
sbit P12=P1^2;
sbit P13=P1^3;
sbit P20=P2^0;
unsigned int a=0;
#define THCO 0xee
#define THLO 0x00
unsigned char code duan[]={0x3F, 0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
main(void)
{
unsigned char course=0;
TMOD=0x11;
TH0=THCO;
TL0=THLO;
EA=1;
ET0=1;
TR0=1;
while(1)
{
if(P20==1)course=1;
if(P20==0&&course==1){a++; course=0 ; }
}
}
void timw0() interrupt 1
{
static unsigned char k=0;
TH0=THCO;
TL0=THLO;
P1|=0xff;
if(k>3){k=0;}
k++;
switch(k-1)
{
case(0):P0=duan[a%10]; P13=0; break;
case(1):P0=duan[a%100/10];P12=0;break;
case(2):P0=duan[a%1000/100];P11=0;break;
case(3):P0=duan[a/1000];P10=0; break;
}
}