Commit Graph

28 Commits

Author SHA1 Message Date
Andrew Tridgell 76d16e2d78 AP_Winch: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Peter Barker 8801b78a9c AP_Winch: allow compilation with HAL_LOGGING_ENABLED false 2024-01-17 18:25:55 +11:00
Randy Mackay a477bf609e AP_Winch: pos control user output fix 2023-10-31 10:37:45 +11:00
Randy Mackay 3659fb633e AP_Winch: fix daiwa unknown spelling 2023-10-31 10:37:45 +11:00
muramura fa0f089fe1 AP_Winch: Make healthy strings common 2023-10-09 17:06:59 +09:00
Randy Mackay 454a57000b AP_Winch: Daiwa gets stuck protection 2023-10-03 10:27:22 +09:00
Randy Mackay 8b86cebec1 AP_Winch: minor comment improvement 2023-10-03 10:27:22 +09:00
Randy Mackay 7a56d887b9 AP_Winch: Options param for init state and verbose output 2023-09-27 06:48:06 +09:00
Tarik Agcayazi 2bb8294685 AP_Winch: Fix baud rate handling
Correct baud rate is 38400. Confirmed with manufacturer, and with a winch on v1.02. Also confirmed w/ manufacturer that newest winches on v1.04 also use 38400. Removed if statement forcing baud rate of 115200 to be consistent with documentation, and to avoid issues in future if manufacturer changes baud rate again.
2023-03-04 07:59:23 +09:00
Peter Barker 8ccd0ccd3a AP_Winch: add and use AP_WINCH_ENABLED 2023-03-03 20:59:06 +11:00
Peter Barker a963826ba0 AP_Winch: tidy includes of SRV_Channel.h 2023-01-25 22:30:55 +11:00
jackhong12 4a4f361a17 all: use CLASS_NO_COPY() macro 2022-10-04 11:23:04 +11:00
Peter Barker 6a0250bc85 AP_Winch: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
murata 7897807a78 AP_Winch: Change from division to multiplication 2022-03-16 18:41:52 +11:00
Iampete1 6e4ae3898d AP_Winch: use floats for get/set output scaled 2021-10-20 18:29:58 +11:00
Randy Mackay 1c1caa9374 AP_Winch: correct Daiwa line lengtha and speed scaling 2020-09-09 11:56:00 +09:00
Randy Mackay b66eaa0d53 AP_Winch: fix type parameter description 2020-08-07 21:55:07 +09:00
Randy Mackay 6bc2bea329 AP_Winch: rename Servo to PWM 2020-08-07 21:55:07 +09:00
Randy Mackay b84423c110 AP_Winch_Daiwa: fixes from peer review
simplify constructor
init calls backend init
fixup parsing to remove unnecessary INT32_MAX/MIN check
fixup comments
2020-08-07 21:55:07 +09:00
Randy Mackay a6c8bb06ff AP_Winch: fixes from peer review
removed init method
constify now_ms
fixed release_length method comment
fixup sprintf
2020-08-07 21:55:07 +09:00
Randy Mackay b0eb375920 AP_Winch: add daiwa driver 2020-08-07 21:55:07 +09:00
Randy Mackay 738480884d AP_Winch: rewrite driver
includes the following changes
move WINCH_ENABLED to library
add singleton
add pre_arm_check
backend gets init_input_and_output and read_pilot_desired_rate
remove use of wheel encoder
rename servo-with-encoder to just servo
add write_log
rename control_mode
add rc input processing
add acceleration limiting
2020-08-07 21:55:07 +09:00
Randy Mackay feb852a9fc AP_Winch: minor formatting fix 2020-08-07 21:55:07 +09:00
Peter Barker 4c9c5767ed AP_Winch: use enum-class for SRV_CHANNEL_LIMIT_TRIM and friends 2019-11-26 10:17:17 +11:00
Leonard Hall f913108efd AP_Winch: support for upgrade to PID object 2019-07-25 17:38:15 +09:00
Peter Barker 898a46fe0e AP_Winch: undefine PASS_TO_BACKEND convenience function 2018-08-17 21:14:57 +09:00
Randy Mackay 2614d2112a AP_Winch: remove redundant member
Also use get_rate_max method instead of config.rate_max member
2017-10-27 09:20:38 +09:00
Randy Mackay 2dfb6a94f2 AP_Winch: library to control winch
fixes after peer review:
renamed disable to relaxed
make parameters private
default type to 1
enabled method checks backend created
servo range initialised in init method
contrain rate-desired during position control
use set-output-limit instead of set-safety-limit
release_length accepts rate
2017-10-27 09:20:38 +09:00