openpilot is an open source driver assistance system. openpilot performs the functions of Automated Lane Centering and Adaptive Cruise Control for over 200 supported car makes and models.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

54 lines
1.4 KiB

from dataclasses import dataclass, field
from opendbc.car.structs import CarParams
from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms
from opendbc.car.lateral import AngleSteeringLimits
from opendbc.car.docs_definitions import CarDocs, CarHarness, CarParts
from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries
Ecu = CarParams.Ecu
class CarControllerParams:
STEER_STEP = 1
ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits(
390, # deg
([0., 5., 25.], [2.5, 1.5, .2]),
([0., 5., 25.], [5., 2., .3]),
)
STEER_DRIVER_ALLOWANCE = 5 # Driver intervention threshold, 0.5 Nm
@dataclass
class PSACarDocs(CarDocs):
package: str = "Adaptive Cruise Control (ACC) & Lane Assist"
car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.psa_a]))
@dataclass
class PSAPlatformConfig(PlatformConfig):
dbc_dict: DbcDict = field(default_factory=lambda: {
Bus.pt: 'psa_aee2010_r3',
})
class CAR(Platforms):
PSA_PEUGEOT_208 = PSAPlatformConfig(
[PSACarDocs("Peugeot 208 2019-25")],
CarSpecs(mass=1530, wheelbase=2.54, steerRatio=17.6),
)
# Placeholder, FW Query will be added in separate PR
FW_QUERY_CONFIG = FwQueryConfig(
requests=[
Request(
[StdQueries.TESTER_PRESENT_REQUEST, StdQueries.UDS_VERSION_REQUEST],
[StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.UDS_VERSION_RESPONSE],
bus=0,
),
],
)
DBC = CAR.create_dbc_map()