choose sensor for Arduino

Hello everybody.

I am working on a project and I would like to control some sensors and actuators. What I would like to do is connect those devices to an adecuated board. So what I do not know is if arduino has its sensors or if for example I can choose a sensor I want to use from Texas Instruments and use it. Is it possible to have compability of any kind of sensor with an adecuated arduino board? Or even a hardware or software interface which permits me do this.

Thanks you so much. I have look something from the arduino web page but link does not work. I think the answer to my question is here: General Purpose Sensor Abstraction Layer http://www.insanegiantrobots.com/arduino/sensorlib.html. As you could see link does not work.

Thanks to everyone. :slight_smile:

arduino is just a micro controller. any sensor that can be interfaced with a micro controller can talk to arduino. what sensor do you want to interface?

the interfaces include but are not limited to UART, I2C, SPI, analog, serial digital, parallel digital.

example code for the specific sensor you want may not exist but there is lots of other general example code you could work from.

the only drawback of the arduino is the 10bit ADC and it's relatively slow update speed.

there have been many creative setups for accessing different sensors. it really depends on your expertise in electronics. Most sensors are packaged for use with micro controllers so there shouldn’t be a problem finding what your looking for online or in some stores. Best advice is to google or go to instructables.com for some step by step instructions if you aren’t that experienced.

I think the word "adecuated" may have got lost in a translation perhaps. "Adequate", maybe?

vini_i:
arduino is just a micro controller. any sensor that can be interfaced with a micro controller can talk to arduino. what sensor do you want to interface?

the interfaces include but are not limited to UART, I2C, SPI, analog, serial digital, parallel digital.

example code for the specific sensor you want may not exist but there is lots of other general example code you could work from.

the only drawback of the arduino is the 10bit ADC and it's relatively slow update speed.

vini_i:
arduino is just a micro controller. any sensor that can be interfaced with a micro controller can talk to arduino. what sensor do you want to interface?

the interfaces include but are not limited to UART, I2C, SPI, analog, serial digital, parallel digital.

example code for the specific sensor you want may not exist but there is lots of other general example code you could work from.

the only drawback of the arduino is the 10bit ADC and it's relatively slow update speed.

Sorry about that, I may expressed incorrectly. First of all I know that arduino is a microcontroller, what I was asking is that if arduino community also develop sensors.

So for example i have a sensor with BNC connection. I have not seen any Arduino board with BNC connection so I will like to know if there is any hardware interface witch permits me connect one size a BNC connection and have an i2C bus to connect to my microcontroller.

With software interface i mean in case that is a hardware interface as the one a described, a software interface will be appreciate (i do not like programming in assembler, very boring).

I think there is also 12 bit ADC, but I think is enough: 4096 possible values.

Thank you so much, next time i should be more clear. I have enough electronic knowledge so I only need specific information. BTW, I2C and SPI (serial port interface) are serial digital interfaces :slight_smile: .

JimboZA:
I think the word "adecuated" may have got lost in a translation perhaps. "Adequate", maybe?

Yes, sure. I will prefer constructive comments, to help anyone interested. This is not language forum. Next time i will take in consider grammar mistakes but please do not waste time on this things if you are not going to help me with my problem.

That was a constructive comment: I didn't know what you meant and was trying to get a better understanding of your question. If a word's meaning gets lost in the translation, then the responses will be less useful.

But whatever.... I'm out.

grupoExcellentia:
So for example i have a sensor with BNC connection. I have not seen any Arduino board with BNC connection so I will like to know if there is any hardware interface witch permits me connect one size a BNC connection and have an i2C bus to connect to my microcontroller.

With basic electronics knowledge you should know that BNC connectors are mostly used with small AC signals, which require special (shielded...) AC signal conditioning circuits. If you don't know how to wire the connectors and amplifier circuits, keep your hands off and buy only sensors with a digital interface.

If you need analogue input and I2C output, use an Arduino and attach the signal to one of its ADC inputs, and attach another connector to its I2C output. Or forget about I2C when the digitized value is already in the Arduino. Or use something like LTC2309...

DrDiettrich:
With basic electronics knowledge you should know that BNC connectors are mostly used with small AC signals, which require special (shielded…) AC signal conditioning circuits. If you don’t know how to wire the connectors and amplifier circuits, keep your hands off and buy only sensors with a digital interface.

If you need analogue input and I2C output, use an Arduino and attach the signal to one of its ADC inputs, and attach another connector to its I2C output. Or forget about I2C when the digitized value is already in the Arduino. Or use something like LTC2309…

For sure a BNC connection can not be connected to an ADC simply because ADC makes uniform quantification and the overload voltages are likely the ground and the Vcc of the board (in arduino between 3,3V and 5 V more or less). This means a lost in resolution if you try to connect directy the BNC to the board. This also has another problem that is the bad integration of a BNC connection with a microstrip directly welding the BNC to the path. Another problem is that if the signal from the sensor has negative values the ADC would not do its task correctly, because most ADC work with possitive signals. So you will need first as you said to amplify the signal and after that you have to sum a DC value. As it can be seen this is quite useless. Also if the signal is very little you maybe want to work with decimal values. I have only configurate ADC in assembler and never in C but normally ADC use all the bits for quantifying the integer part of the value so this is another problemm, because if your signal is very little, 10 bits must be inadequate to get good precision.

So as you can see I have study things, before asking. I talked about i2C bus because it is a bus that mostly all microcontroller support. What I was looking for and I am going to say that after writing this post I found the solution is what I have called a hardware interface. It is similar to LTC2309. This is a device in which you connect a BNC sensor and also have pins for connecting the microcontroller by i2C. So the hard work of quantifying little AC signal is done by the device so we do not have to take care about overload voltage of the quantifier or resolution. We get directly a float-point variable with the result via i2c communication.

I hope this can helps anyone with my problem. Find an i2c interface to the connection you want and you will monitorice any kind of sensor you want, not having to do complicated, unestable electrical paths and welds.

grupoExcellentia:
I hope this can helps anyone with my problem. Find an i2c interface to the connection you want and you will monitorice any kind of sensor you want, not having to do complicated, unestable electrical paths and welds.

So let's stop talking about connectors and theory, and let's proceed with the practical things in between them :-]

DrDiettrich:
So let's stop talking about connectors and theory, and let's proceed with the practical things in between them :-]

That would be ok. Here is an example of an I2C-BNC hardware interface: https://www.atlas-scientific.com/product_pages/circuits/ezo_ph.html?. I have look on the internet and there is lots of interfaces to common serial communication interfaces as the one arduino has (I2C,SPI,RS232...). This website is think for good integration with Arduino, as they said in the web, so maybe is interesting to anyone who wants to learn about hardware interfaces.

Also as our friend DrDiettrich has said LTC2309 is phisically what I shown in that website link. I recommmend this web, linear.com. There is a lot of electronic little modules and circuits to look how big things can be done. Also if you can develop your own i2c bus, for example, the componentes (transceiver...) for making it can be found on this website. Thanks to DrDiettrich, very interesting web.