Looking to hire arduino expert

I am looking to hire an arduino expert. I need to actuate a servo based on pressure. I also need a user interface of some sort that allows the correlation to be adjusted without reprogramming the arduino. I’m based in east Dallas area. This is a contract based project work when you have the time, very flexible but wanting to move forward asap.

-Anthony Valenti
[email protected]

Do you have specific hardware in mind (especially on the pressure side - how do you plan to detect / measure it? Are you measuring barometric (gas) pressure, or pressure applied to a surface?). I’m not sure I’d call myself an expert, but would be happy to help you - depending on what you’re trying to do.

1 Like

I want to use a Bosch automotive pressure sensor 2-3 bar. Maybe a small screen for the user interface.

If you consider remote access and display valuable, I would recommend using a Raspberry Pi board instead. It would allow the software to be developed remotely, and loaded onto the board, “The Program”. If you install Apache Web Server, you could access the pressure remotely and display a graph over time. The software could be updated remotely as required.
If all you want is a number, here are three CGI programs, each one accesses a different temperature sensor and outputs its value via a webpage. Exceedingly simple, but another program can read this web page, store, and plot the data over time.
mcp9808
DS3231
lm75a
All 3 temperature sensors are attached to the same Raspberry Pi 3.

4 Likes

Responses like this are why I love the Dallas Makerspace. A random stranger has a technical problem, and a knowledgeable expert volunteers his expertise to help. Kudos to you, JMerkle.

4 Likes

If you can get one, I’d suggest a Pi Pico W. It is capable of running a simple web server that could serve up a UI for changing your settings. It’s cheap ($10) and much easier to get than a Pi, which is very expensive and hard to find right now.

One other advantage is that it has analog inputs, where the Pi is all digital and you’d need to add an A/D converter to it to read that sensor. It doesn’t, however, have a wired Ethernet connection if that matters to you.

I don’t much like Arduino because I’ve found them to be finicky and easy to brick.

1 Like

I’m open to raspberry pi or other options as long as I can find a programmer that can get the project done to the finish. The servos I plan on using have a 0.07 sec transition time and it’s important I can drive them at that speed. Like I said I’m looking to pay someone to work on this and other projects and get some functioning prototypes. I will take care of all the cnc machining and mechanical parts of the project,including electronics housings.

I made this wiki page a few years ago, using the LM75 I2C temperature sensor on a module from Ebay:

The webpage details the class I did at the time installing Apache and some example CGI code that will read the sensor and display the data.
Concerning servos, 0.07 seconds transition time is EXCEEDINGLY aggressive. Typical hobby servos use a 50Hz, 20ms period, with a 1ms to 2ms pulse width to define the position. They usually take a second or two for movement from one side to the other. It appears you found something outside the typical hobby arena.
From what I can tell, your application would need a thread to continuously read a sensor, and would need to move a servo, based on readings from the sensor. Not sure if any kind of PID loop or hysteresis would be needed to prevent oscillation, or if this is supposed to function more like an analog system where the servo moves as an error component increases / decreases, IE moves 20% as a sensor approaches a value, and continues to move more and more as the sensor reading gets closer and closer to a value.
A quick Google search pulls up plenty of ways to drive a hobby servo motor with a Raspberry Pi. Although I did this a long time ago, I tend to forget the details… (Not every project made it into my Wiki…)
Here’s a video that walks through the process:

I don’t forsee oscillation as a problem as I’m monitoring pressure that will be changing rapidly (a turbo boost pressure) the servo will spend the majority of its time fully closed or open. But reaction time should be fast enough to poll the pressure sensor rapidly (maybe 50 times per second?)

Like I said I’m looking to hire someone that can implement the electronics package as I’m more a mechanical engineer and will take care of the physical parts. For the right person it could be a lucrative project.

On what kind of distance/rotation? Also with this be a hot environment like an engine compartment. Hobby servos will not last long in the heat.

The servo travel is only around 0.75" its an all metal servo and the housing will be liquid cooled.

1 Like

So do you already have the servo spec’d that you want to use? That might drive some of the design decisions.

I agree that a “full on” Raspberry Pi (even zero) might be overkill (and at the moment is hard to source). A Pi Pico W would be very capable, but still might be hard to source (do you need to make just one? ten? a couple dozen?).

The ESP32 is my current “go-to” for Arduino compatible projects and should fit the bill - easy to acquire ($6 with next day delivery from Amazon) and can be programmed from the Arduino ecosystem. It can serve a web page (built in WiFi) for the “UI” (so you don’t need to design the screen - user would just connect from their phone/tablet/laptop) and handle the sensor easily enough.

Without knowing more about your sensor and / or servo, it’s hard to start selecting the processor. For example, this BOSCH sensor fits your description, but it’s a 5V part and assuming you’re driving a 7V servo (faster servos often are higher voltage) you might need extra circuitry (everything except the Arduino mentioned above is a 3.3V system). Similarly, you might not want to have a web-based (wifi) interface, and an Arduino can drive a cheap ($15) touch screen

1 Like

I do have a servo spec the savox 1257tg seems to fit the bill. As for quantity I want to make a handful of functional prototypes then batches in the hundreds of them. The pressure sensor will be a Bosch automotive style sensor like the one here

3 BAR MAP Sensor Replacement for Chevrolet Express 2500 3500 4500, for Silverado 2500 3500 https://a.co/d/dJmYmRj

Open to raspberry pi arduino ect. Really open to anything as long as it is scaleable to mass production. I may not want to have end users messing with a web interface, I’d prefer them to have a touch screen or digital readout with knobs.

This is a really high frequency servo and that 0.07s transition time looks accurate. I’d be tempted to black box the PWM in a separate small uC (or a PWM driver) and let the primary one drive the display and read the pressure sensor. It’ll add $2 to the BOM but save a ton of headache.

0.07s for 60 degrees.

Most any micro has built-in PWM hardware. There’s virtually no overhead to manage it. Just write a new position value, and the hardware does the rest. I’d recommend getting one of these servos and try it out. There are hundreds of servo example programs available. Most all my code will include a command-line interface, allowing me to easily run test code at any time. First test would be to time the actual response vs documented response.

What kind of torque / load was used? An unloaded motor/servo will ALWAY run faster than one with a load on it.

I dunno. I just found that in the specs.

I think I remember you showing that to us in your first class. I’d like to see that again. Very useful.

When’s that next class going up :wink: ?

1 Like

I keep updating the code and pushing it to my website. See the “Command Line” page.

http://merkles.com/MediaWiki/index.php/Command_Line_Interface

Down near the bottom of the page… Look for “Source Code”.

You’ll need to get printf() and __io_getchar() working first. Documentation and code on the same page…

I’m waiting for another order of NUCLEO-F103RB boards to come in before scheduling the next class.

3 Likes