-
i am making my final year project in electronics .my topic is accelerometer controlled robotic arm .i cannot proceed with circuit diagram and coding of it can any one help ??0
-
Member • Apr 19, 2011
Hello Raj,
Welcome to CE. See don't waste your time to find the ready code and circuit but try to find the circuit and give at least one or two try to make the code by yourself by this way you can acquire the knowledge which is useful to you in future.Are you sure? This action cannot be undone. -
Member • Apr 20, 2011
@gf: nice answer bro
@raaj: hi raaj
i think i am not right person to tell because as i am in 3rd year but i cant hold without saying
the project given to you is on your interest am i right
then why are you asking us to do your project as assembling and checking is not a matter of project because a well known kid can do it try to know components its required and know there properties and combine them
if you got any problem feel free to ask because we are here to do that
it may hurt you but it is a fact don't misunderstand me pleaseAre you sure? This action cannot be undone. -
Member • Apr 20, 2011
i need tip about how to interface an acelerometer with any motor (to drive the arm)??Are you sure? This action cannot be undone. -
Member • Apr 20, 2011
i think you need controller to interface and control both of them or your accelerometer is having a controller?
but on basis on this interfacing i think godfather may help you 😀 better than meAre you sure? This action cannot be undone. -
Member • Apr 20, 2011
what do u suggest ??
shud i construct the arm or buy 1 ???
)finance is also my concern in the project.)
but i have lots of queries that which microcontroller should i use atmega16 or 32 and ?shud i directly interface the triaxis accelerometer with the microcontroller??
i also need make this project wireless between the arm and accelerometer would that be possible????Are you sure? This action cannot be undone. -
Member • Apr 20, 2011
As per my knowledge you can't interface your ARM directly to Accelerometer but you have to take the data from the Accelerometer then according to change you have to drive the motor. i mean change in direction decides the motor movement X,Y or Z direction.raaj90i need tip about how to interface an acelerometer with any motor (to drive the arm)??Are you sure? This action cannot be undone. -
Member • Apr 20, 2011
i also need make this project wireless between the arm and accelerometer would that be possible????Are you sure? This action cannot be undone. -
Member • Apr 20, 2011
yes i think you can for that you have to use some transmitter and receiversraaj90i also need make this project wireless between the arm and accelerometer would that be possible????Are you sure? This action cannot be undone. -
Member • Apr 20, 2011
how many accelerometers will i require to control a 3 fold arm in four directions??Are you sure? This action cannot be undone. -
Member • Apr 20, 2011
i think it can be done using one because direction of arm depends on movement of motorraaj90how many accelerometers will i require to control a 3 fold arm in four directions??
hope i am right and clearAre you sure? This action cannot be undone. -
Member • Apr 20, 2011
Yes it is Possible why not check this topic #-Link-Snipped-# you can use that RF module for wireless communication.raaj90i also need make this project wireless between the arm and accelerometer would that be possible????Are you sure? This action cannot be undone. -
Member • Apr 21, 2011
which software shud i use to simulate my project hardware??
i have a design but i need to test it virtually first.
i tried on "proteus" but it doesnt have accelerometer control.Are you sure? This action cannot be undone. -
Member • Apr 21, 2011
Hello Mate,raaj90which software shud i use to simulate my project hardware??
i have a design but i need to test it virtually first.
i tried on "proteus" but it doesnt have accelerometer control.
I don't think the simulator have all the components you can simulate only some basic components for the accelerometer you have to test it practically and trial and error is the best way make one design debug it and find the solution if any. BUT i suggest to use the reference circuit given in the application note of every devices.Are you sure? This action cannot be undone. -
Member • Apr 22, 2011
raaj90which software shud i use to simulate my project hardware??
i have a design but i need to test it virtually first.
i tried on "proteus" but it doesnt have accelerometer control.
i think all our softwares have a basic components why can't you try for building a accelerometer in that virtual design softwareAre you sure? This action cannot be undone. -
Member • Apr 22, 2011
How can he get the data virtually from accelerometer? I think its not possible to simulate Accelerometer in Simulator.narayana murthyi think all our softwares have a basic components why can't you try for building a accelerometer in that virtual design softwareAre you sure? This action cannot be undone. -
Member • Apr 22, 2011
i am not good in simulators but i know only one thing in softwares like matlab we can connect the circuits and try to simulate them in my view they read the component properties and simulate according to them as accelerometer is also a made device but not a basic device it has his own components inside why can't we paste the circuit there and simulate themgodfatherHow can he get the data virtually from accelerometer? I think its not possible to simulate Accelerometer in Simulator.Are you sure? This action cannot be undone. -
Member • Apr 22, 2011
Yeah you can use MATLAB for some signal or Image processing.narayana murthyi am not good in simulators but i know only one thing in softwares like matlab we can connect the circuits and try to simulate them in my view they read the component properties and simulate according to them as accelerometer is also a made device but not a basic device it has his own components inside why can't we paste the circuit there and simulate themAre you sure? This action cannot be undone. -
Member • Apr 22, 2011
yes so i am suggesting this may help in this topic we can connect them and test the output but i think its not so easy to simulate in matlab because many factors effect its simulationsgodfatherYeah you can use MATLAB for some signal or Image processing.Are you sure? This action cannot be undone. -
Member • Apr 25, 2011
i have attached the layout developed by myself ..along with it i have provided the details in bracket. i just want to know if i am goin right ??
are there any flaws in basic blocks?? or did i missed something???
#-Link-Snipped-#Are you sure? This action cannot be undone. -
Member • Apr 25, 2011
Good Preparation. I like this.
There is one suggestion you can use RFM70 or RFM22 for RF communication.Are you sure? This action cannot be undone. -
Member • Apr 25, 2011
is it correct?? my block diagram,, shud i start working on it??did i miiss any thingAre you sure? This action cannot be undone. -
Member • Apr 25, 2011
Right now everything seems okey. You can start interfacing RF with Controller. once you done that then start interface with sensor and motors.raaj90is it correct?? my block diagram,, shud i start working on it??did i miiss any thing
Inshort divide your project into sections.Are you sure? This action cannot be undone. -
Member • Apr 25, 2011
why RFM70 or RFM22??
the ones i have selected is not good???Are you sure? This action cannot be undone. -
Member • Apr 25, 2011
Nice post. Raaj Good block diagram. If you can get things to work you might not need simulation.Are you sure? This action cannot be undone. -
Member • May 1, 2011
i got this diagram to interface servo with atmega32 but i cant figure out why the inductor used in it and wat is the supply that shud be connected to motor?? ...i have marked it wid red arrows
#-Link-Snipped-#Are you sure? This action cannot be undone. -
Member • May 1, 2011
nice work raaj do you tested itAre you sure? This action cannot be undone. -
Member • May 2, 2011
i got this diagram to interface servo with atmega32 but i cant figure out why the inductor used in it and wat is the supply that shud be connected to motor??
#-Link-Snipped-#Are you sure? This action cannot be undone. -
Member • May 2, 2011
Ok Raj here is the explanation:
1. The Servo motor can be connected to the power source it specifies. For example if the motor runs on 5V you should connect it to that. If you have the development board then you would use the same supply thats going in to the micro controller.
2. The AVCC is Analog VCC. It's used when you are using Analog to Digital converters for a signal. Then you would probably use a separate power source than the one powering your microcontroller and connect that to AVCC. For your application it would be connected to 5V (or normal VCC). You can keep it disconnected and see if the circuit works, if not then connect VCC (5V).Are you sure? This action cannot be undone. -
Member • May 6, 2011
ok i got it bt y that inductor and capacitor at pin 50 is used i didnt get that the whole system works just fine without the inductor alsoAre you sure? This action cannot be undone. -
Member • May 6, 2011
@Raaj~
Well i am not able to see the images you have attached here. But i can say that if you take this circuit from any reference circuit then please go with all the component they have given and with that much value only otherwise it may work but sometimes you get some weird result to for protection of everything follow the standard Circuitry.Are you sure? This action cannot be undone. -
Member • May 7, 2011
@baron plz see i have attached the image here
why the inductor used in it????
Are you sure? This action cannot be undone. -
Member • May 9, 2011
Ohk you are asking why Inductor and Cap on Pin #30 (AVCC). The LC combination forms an LC-Filter. It is required to keep the power line noise (and other high frequency noise) from disturbing your Analog pin readings. From our electronic classes we know
f = 1 / 2 PI sqrt(LC)
So larger the L and C value the smaller the pass frequency since we need to pass only DC (f ~= 0 ) we can use a good value of L and C like shown in the image, you will mostly be using a ceramic capacitor.
I hope I have explained it, and please please correct me if I am wrong. Do your own research too. Look up "Bypass Capacitors" and "Filter capacitors" for more information!Are you sure? This action cannot be undone. -
Member • May 9, 2011
i got you bt ,while simulation in proteus all seemed to be fine even if i removed lc from circuitAre you sure? This action cannot be undone. -
Member • May 9, 2011
Dear Raj,raaj90i got you bt ,while simulation in proteus all seemed to be fine even if i removed lc from circuit
As i said if possible then use the reference circuit. It might be possible that your circuit can work without some component but to get fully functioned project follow the standard they are using.Are you sure? This action cannot be undone. -
Member • May 10, 2011
Yes it will still work. This is completely out of scope here but I came across a report that the LC filter on this particular model of Atmega controller is completely useless because VCC and AVCC were internelly shorted!!! It was a mistake by Atmel, and only on few batches.
Yes, it will still work, you don't need it. But if you use the Analog to Digital pin you might need it then. Leave it disconnected, if the circuit works, all good. 😀Are you sure? This action cannot be undone. -
Member • May 11, 2011
thanx dats helpfulAre you sure? This action cannot be undone. -
Member • May 11, 2011
@Raj ~raaj90thanx dats helpful
Please do not use SMS text. Please !!
and share your progress in this project with us. 😀Are you sure? This action cannot be undone. -
Member • Jun 8, 2011
Maybe this code help you. AVR processor work with AD7718 ADC and three ADXL203 accelerometers. I could attach schematic, but I need 10+ posts for attachments.raaj90topic is accelerometer controlled robotic arm .i cannot proceed with circuit diagram and coding of it can any one help ??
// Inertial Cluster // Processor ATmega8 // Clock rate 16 MHz // https://protoboardfab.com/ #include <iom8.h> // Declares the internal register addresses for ATmega8 #include <inavr.h> // Intrinsics for iccAVR // Function declaration void initPorts (void); // ATmega8 Ports init void shortDelay400ns (void); // Very short delay, approx 400 ns void shortDelay1mks (void); // Short delay, approx 1 mks void longDelay400ms (void); // Long delay, approx 400 ms @ 16 MHz void clearReadings (void); // Clear all readings void resetADC (void); // ADC reset void initUSART (unsigned char baud); // USART initialization void initMasterSPI (void); // SPI initialization as a Master void transmitMasterSPI (unsigned char SPIData); // Perform a SPI transmission void configADC (void); // Configure ADC void setChannel (unsigned char channel); // Set ADC channel long ReadADC (void); // ADC reading long SetAndReadADC (unsigned char channel); // Set & Read ADC at once void transmitUSART(unsigned char tdata); // USART transmit void transmitSLIPUSART(unsigned char tsdata); // SLIP transmit over USART // Selftest control #define ST1 PB0 // Selftest pin for accelerometers and angular rate sensor #define ST2 PB1 // Selftest pin for angular rate sensor only // ADC AD7718 control #define DRDY (PIND & 4) // ADC Data Ready (active low, ADC master) #define RSTADC PD3 // ADC Reset (active low, ADC slave) // SPI #define MOSI PB3 #define SCK PB5 // UART #define TXDPIN PD1 // AD7718 register model #define CommWR 0 #define CommRD 64 #define CommMode 1 #define CommControl 2 #define CommFilter 3 #define CommData 4 #define CommOffset 5 #define CommGain 6 #define CommIO 7 #define CommTest1 12 #define CommTest2 13 #define CommID 15 // AD7718 variables // ADC update rate for CHOP disabled #define updateRateNoCHOP1365Hz 3 // ADC update rate = 1365.33 Hz #define updateRateNoCHOP315Hz 13 // ADC update rate = 315 Hz #define updateRateNoCHOP59Hz 69 // ADC update rate = 59.36 Hz #define updateRateNoCHOP16Hz 255 // ADC update rate = 16.06 Hz #define BaseMode 147 // Chopping is disabled, AINCOM is unbuffered allowing it to be tied to AGND in single-ended input configuration, configured as a 10 pseudodifferential input, oscillator is not shut off, continuous conversion #define BaseControl 15 // Select input AIN1, enable unipolar coding, select the ADC input range as 0...+5 V // AD7718 channels #define accelerXch 0 #define accelerYch 2 #define accelerZch 5 #define gyro1ch 4 #define gyro2ch 9 #define gyro3ch 6 #define tempch 8 #define GNDch 7 #define accelerXnoFch 1 //SLIP #define SLIPEND 0xC0 #define SLIPESC 0xDB #define SLIPENDESC 0xDC #define SLIPESCESC 0xDD long accelerX; // Accelerometer 1 (X-axis) current reading long accelerY; // Accelerometer 2 (Y-axis) current reading long accelerZ; // Accelerometer 3 (Z-axis) current reading long gyro1; // Angular rate sensor current reading long temp; // Temperature void main (void) { __disable_interrupt(); initPorts(); clearReadings(); initUSART(12); // 38.4 k @ 8 MHz initMasterSPI(); resetADC(); configADC(); //setChannel(accelerXch); setChannel(GNDch); while (1) // Main loop { accelerX = ReadADC(); __delay_cycles( 10000 ); // Data synchronizer //transmitUSART(SLIPEND); //transmitUSART (0xAA); __delay_cycles( 800000 ); // Debug!!! 100 ms transmitUSART((unsigned char)(accelerX>>24)); transmitUSART((unsigned char)(accelerX>>16)); transmitUSART((unsigned char)(accelerX>>8)); transmitUSART((unsigned char)(accelerX)); } } void initPorts(void) // ATmega8 Ports init { DDRB = 0; // All ports direction = input DDRC = 0; DDRD = 0; DDRB |= ( 1 << ST1 ); // Selftest pins = output DDRB |= ( 1 << ST2 ); DDRD |= ( 1 << RSTADC ); // ADC reset and TxD = output DDRD |= ( 1 << TXDPIN ); PORTB &= ~( 1 << ST1 ); // Selftest pins = 0 (no selftest) PORTB &= ~( 1 << ST2 ); PORTD &= ~( 1 << RSTADC ); // ADC reset = 0 } void initUSART(unsigned char baud) // USART initialization { UBRRH = (unsigned char)(baud>>8); UBRRL = (unsigned char) baud; UCSRB = (( 1 << RXEN ) | ( 1 << TXEN )); // RX, TX enable UCSRC = ( 1 << URSEL ) | ( 1 << USBS ) | ( 3 << UCSZ0 ); // Two stop bits, 8 bit } void transmitUSART(unsigned char tdata) // USART transmit { while ( !( UCSRA & (1<<UDRE)) ); UDR = tdata; } void transmitSLIPUSART(unsigned char tsdata) // SLIP transmit over USART { if (tsdata == SLIPEND) { transmitUSART(SLIPESC); transmitUSART(SLIPENDESC); return; } if (tsdata == SLIPESC) { transmitUSART(SLIPESC); transmitUSART(SLIPESCESC); return; } transmitUSART(tsdata); } void shortDelay400ns() // Very short delay, approx 400 ns @ 16 MHz { __delay_cycles( 3 ); } void shortDelay1mks(void) // Short delay, approx 1 mks @ 16 MHz { __delay_cycles( 12 ); } void longDelay400ms(void) // Long delay, approx 300 ms @ 16 MHz { __delay_cycles( 6400000 ); } void clearReadings(void) // Clear all readings { accelerX = 0; accelerY = 0; accelerZ = 0; gyro1 = 0; temp = 0; } void resetADC(void) // ADC reset { PORTD &= ~( 1 << RSTADC ); // ADC reset pin = 0 shortDelay1mks(); // Wait longDelay400ms(); // Debug!!! longDelay400ms(); // Debug!!! PORTD |= ( 1 << RSTADC ); // ADC reset pin = 1 longDelay400ms(); // The oscillator will require the 300 ms start-up time longDelay400ms(); // Debug!!! longDelay400ms(); // Debug!!! } void initMasterSPI(void) // SPI initialization as a Master { DDRB |= (( 1 << MOSI ) | ( 1 << SCK )); // Set MOSI and SCK output, all others input SPCR = ( 1 << SPE ) | ( 1 << MSTR ) | ( 1 << SPR0 );// Enable SPI, Master, set clock rate fck/16 } void transmitMasterSPI(unsigned char SPIData ) // Perform a SPI transmission { SPDR = SPIData; // Start transmission while( !( SPSR & ( 1 << SPIF ))); // Wait for transmission complete } void configADC (void) // Configure ADC { transmitMasterSPI( CommWR | CommFilter ); transmitMasterSPI( updateRateNoCHOP315Hz ); transmitMasterSPI( CommWR | CommMode ); transmitMasterSPI( BaseMode ); transmitMasterSPI( CommWR | CommControl ); transmitMasterSPI( BaseControl ); while ( DRDY ) ; } void setChannel (unsigned char channel) // Set ADC channel { channel <<= 4; transmitMasterSPI( CommWR | CommControl ); transmitMasterSPI( channel | BaseControl ); while ( DRDY ) ; } long ReadADC (void) // ADC reading { long ADCword = 0; // ADC current reading while ( DRDY ) ; transmitMasterSPI( CommRD | CommData ); transmitMasterSPI( 0xFF ); ADCword = SPDR; ADCword <<= 8; transmitMasterSPI( 0xFF ); ADCword |= SPDR; ADCword <<= 8; transmitMasterSPI( 0xFF ); ADCword |= SPDR; return ADCword; } long SetAndReadADC (unsigned char channel) // Set & Read ADC at once { setChannel ( channel ); return ReadADC (); }
Are you sure? This action cannot be undone. -
Member • Dec 17, 2011
I think for this much data transmission tranceivers are pretty useful try using CC2500 its really cool to work with that. if you want any help regarding that i can .... any way best wishes..Are you sure? This action cannot be undone. -
Member • Dec 17, 2011
CC2500 has some errata sheet and not able to make it working so i transferred to RFM70 and till date i have created more than 20 application based on RFM70. 😀jobinvcmI think for this much data transmission tranceivers are pretty useful try using CC2500 its really cool to work with that. if you want any help regarding that i can .... any way best wishes..Are you sure? This action cannot be undone. -
Member • Dec 17, 2011
If you need any sample codes i can provide.. I still think that CC2500 is pretty much efficient than other tranceivers.. It has huge frequency specturmAre you sure? This action cannot be undone. -
Member • Dec 17, 2011
Sure i will let you know but right now i found RFM70 equivalant to CC2500, But yes looking forward for other 434Mhz solutions from TI.jobinvcmIf you need any sample codes i can provide.. I still think that CC2500 is pretty much efficient than other tranceivers.. It has huge frequency specturmAre you sure? This action cannot be undone. -
Member • Dec 19, 2011
hi,
welcome to this forum site, here u can find lots of things. For your questions you should refer to your parents and friends.Are you sure? This action cannot be undone. -
Member • Dec 23, 2011
hi,
I want programing codes for my accelerometer controlled robotic model and also want some tips how it will work and which programing language should i have to use.
--------------
#-Link-Snipped-#Are you sure? This action cannot be undone. -
Member • Dec 23, 2011
How can anyone give you source code without knowing your application and hardware design? It's better that you share your code whatever effort you'd done and ask queries whenever you're facing problem rather than getting ready code, yes you can use some reference code. 😀alem124maxhi,
I want programing codes for my accelerometer controlled robotic model and also want some tips how it will work and which programing language should i have to use.
--------------
#-Link-Snipped-#Are you sure? This action cannot be undone. -
Member • Dec 26, 2011
you will need 3Are you sure? This action cannot be undone.