Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] Object counting in conveyor

Status
Not open for further replies.

cyanpraveen

Junior Member level 3
Joined
Mar 31, 2011
Messages
27
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,527
Hello guys

i am designing a simple conveyor system.

I using 12 VDC motor with 1500 rpm

Now my problem is, i need to count the no of objects place in the belt on the run time.

I thought of using IR to count objects, but dono how to get start.

so guys pls help... if there is any other better option i ll consider tat also

Advance Thanks for help
 

We'd need more information. What size, shape and material are the objects? How wide is the belt? How fast does the belt travel (surface speed)?
 

Go to OMRON side - OMRON Global.
They offer wide range of sensors which can detect the object presense. The output of these sensors could be connected to some PLC again from OMRON. I meant - all what you need could be found in company like OMRON
 

Yes you can use IR transmitter reciver for this application... same time like KJ6EAD told you post more details of your project... & also i think 1500RPM motor is very high speed for your proj... you may reduce this RPM(using gears) or try some other less RPM motor... You can also use LDR based circuits for this application.... Plz go threw this link...here a simple circuit.. **broken link removed**
 

Objects cross monitor point once per time ?
The application in wich I work is used Laser ones with reflector mirror.

+++
 

there are more advanced sensors which don't need reflective mirrors. They can even measure the width or the dimensions of the detail and if something outside the defined area will trigger the output.
 

I am just using the conveyor for educational purpose... to show kids how conveyor works. PLC is a good option but i need to finish this one in low budget.

since it is for edu purpose i m not using very big machine (12cm -width and 1 meter length) conveyor and i can control the speed using gears.

so there no specific objects is used for this application .

for me wat exactly required is the sensor need to count the objects as we place in the conveyor and need to display it on the lcd.

the problem is i dono wat type sensor need to used,how to extract the value frm sensor to display in lcd.

Thanks...
 

you can use simple LDR circuit also for this purpose... Plz see the attach ment... Connect pin#3 to counting IC or microcontroller...

37_1305103744.jpg


31_1305103775.gif
 

It seem there will be some problem in detecting objects while using LDR (it requires a closed surface to detect object). If i am wrong forgive me

So think the better option would be IR.

so can anyone suggest me how to program n design using IR pls. i mean some schematics and material explaining how to interface IR with 8051

thanks
 

It seem there will be some problem in detecting objects while using LDR (it requires a closed surface to detect object).

Yes you are right... but, its simple to cover LDR & LED area with black rubber tube... Anyhow using IR circuit is avoid these kind of job i accept...
 

Hi there...

I am trying to count the no of object pass in a conveyor systems and it need to be displayed in a LCD every time a object passes through it. I used IR for this purpose... wen ir detect the Object the led gets turned off and vice versa.
Now the problem is wen LED turned off the counter keeps on counting till it get turned on

And also the counter counts only upto value 10 and it gets return to 1...

can any one pls help me.

check the program below

while(True)
{
if (LED1 == 0)
{
Count = Count+1;
//LED1 = 1;
}


// UserMessageStorage[4] = Count;
// UserMessageStorage[1]+= 1;


UserMessageStorage[4]= Count/1000;
Count=(Count-(UserMessageStorage[4]*100));
UserMessageStorage[4]+=0x30;

UserMessageStorage[5]= Count/100;
Count=(Count-(UserMessageStorage[5]*10));
UserMessageStorage[5]+=0x30;

UserMessageStorage[6]= Count%100;
UserMessageStorage[6]+=0x30;


TotalCount[0] = UserMessageStorage[4];
TotalCount[1] = UserMessageStorage[5];
TotalCount[2] = UserMessageStorage[6];

// u8Temp = (TotalCount[0] - 0x30) * 100;
// u8Temp += (TotalCount[1] - 0x30) * 10;
// u8Temp += (TotalCount[2] - 0x30) * 1;
//

//TotalCount[0] = UserMessageStorage[1];


// SerTx(TotalCount[0]);
// SerTx(TotalCount[1]);
// SerTx(TotalCount[2]);

ArrayBasePtr="Total Objects= ";
DisplayLCD(1,0,ArrayBasePtr);
ArrayBasePtr=&TotalCount[0];
DisplayLCD(2,0,ArrayBasePtr);
ArrayBasePtr=" Objects";
DisplayLCD(2,3,ArrayBasePtr);
TimeDelay(1000);
LCD_CLEAR();

Thanks in advance guys
 

Guys i m trying to count the no of objects passing in a conveyor belt. for that purpose i am using IR sensor. When sensor goes low it have increase the count by 1.
Now the problem is in the debugger mode it increments the count properly. but while displaying in LCD it increment the count twice...
And i want to know whether i had followed correct procedure.. since i am new to this programming field. i had include my code below


Code:
P3   = 0x00;
	LED1 = 1;
/* LCD initialization */	
	InitializeLCD();

	/* Display project titles */
	DisplayProjectTitle();
	
	*ArrayBasePtr=&UserMessageStorage;
	
	EA   = 1;
	EX0  = 1;
	IT0  = 1; 
		 
	while(True)
	{

/* Serial bit transmissions */
		SerTx(TotalCount[0]);
		SerTx(TotalCount[1]);
		SerTx(TotalCount[2]);
		
                ArrayBasePtr="  TOTAL OBJECTS  ";
		DisplayLCD(1,0,ArrayBasePtr);
		ArrayBasePtr=&TotalCount[0];
		DisplayLCD(2,5,ArrayBasePtr);
		TimeDelay(850);
		LCD_CLEAR();
void Extint0 (void) interrupt 0
{
//  IE0=0;
  value++;
  Count = value; 

   		UserMessageStorage[4]= Count/100;
		Count=(Count-(UserMessageStorage[4]*100));
		UserMessageStorage[4]+=0x30;
		
		UserMessageStorage[5]= Count/10;
		Count=(Count-(UserMessageStorage[5]*10));
		UserMessageStorage[5]+=0x30;
		
		UserMessageStorage[6]= Count%10;
		UserMessageStorage[6]+=0x30;
		
		TotalCount[0] =  UserMessageStorage[4];
		TotalCount[1] =  UserMessageStorage[5];
		TotalCount[2] =  UserMessageStorage[6];

		ArrayBasePtr="  TOTAL OBJECTS  ";
		DisplayLCD(1,0,ArrayBasePtr);
		ArrayBasePtr=&TotalCount[0];
		DisplayLCD(2,5,ArrayBasePtr);

		TimeDelay(850);
		LCD_CLEAR();
 

1- if you made your own IR sensor board consider the blow note:
Make sure the output of IR sensor is enough fast and it has not any glitch. Normally you should put a Schmitt trigger after IR sensor.
Also you can use debounce method in the SW to eliminate glitch problem.

2- The voting may helpful to make sure the sensor output read at stable condition.
3- The object on conveyor may be not monochrome, it means the sensor may generate two pulse on single object due to it is sensitive to color. To solve you can set the sensitivity of sensor or place sensor at proper position
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top