Using Solo for a li...
 
Notifications
Clear all

[Solved] Using Solo for a linear actuator

Page 3 / 3
SOLO Team
(@milad)
Chief Member Moderator

Hi @unolittlebird, thanks and I hope you had a great holiday too, BTW, best wishes for the new year!

Posted by: @unolittlebird

regarding this advice, I wondered whether there is a simple function to read the power used in the SoloPy library? I could only find the get_power_reference() in the UART manual but it is written there that this only works for 3-phase motors. So am I right in the assumption that I would need an extra sensor?

For DC motor to compute the power, you can read VM(the BEMF voltage on DC motor) and IM ( the current inside of the Motor), and using these two parameters and computing P = VM x IM, you can calculate the power generated by the Motor at any time, the Power notion that you mentioned is only used for Brushless motors in open-loop mode.

Let me know if you have other questions.

Milad

 

 

If you found the answers helpful and you could solve your problems, please kindly verify here to help others in the future.

ReplyQuote
Posted : 05/01/2022 5:24 pm
Forum 1
(@unolittlebird)
Trusted Member

Hi @milad

I am still working on my application including the linear actuator. I am not sure if I should post the problem here or open another topic. Anyways, I encountered the following error now a few times:

^CTraceback (most recent call last):
File "tilt.py", line 222, in <module>
tilt_back()
File "tilt.py", line 207, in tilt_back
__solo_driver.set_direction(1) # direction
File "/home/pi/.local/lib/python3.7/site-packages/SoloPy/solo_motor_controller.py", line 182, in set_direction
return self.__exec_cmd(cmd)
File "/home/pi/.local/lib/python3.7/site-packages/SoloPy/solo_motor_controller.py", line 25, in __exec_cmd
while ser.in_waiting:
File "/usr/lib/python3/dist-packages/serial/serialposix.py", line 467, in in_waiting
s = fcntl.ioctl(self.fd, TIOCINQ, TIOCM_zero_str)
KeyboardInterrupt

Sometimes this error happens on __solo_driver.set_speed_reference() and it seems to me that there is a problem in reading or writing to the device address.

In short, I want to move the linear actuator outwards or inwards based on a sensor input. The problem is that the program sometimes freezes and this always happens with an error message down to the SOLO.

I am glad for any help and can also open another topic regarding this error if you prefer.

Kind regards,

unolittlebird

ReplyQuote
Topic starter Posted : 21/01/2022 10:26 am
Page 3 / 3
Share: