Compare commits
7 Commits
Author | SHA1 | Date | |
---|---|---|---|
10de77fbb0 | |||
a04b19b081 | |||
df63ece978 | |||
3777d8bd12 | |||
c2c1104297 | |||
73b5594786 | |||
09fb1d10da |
@ -228,7 +228,8 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, bool rtr, uint32_t data){
|
||||
// TODO display say ALIVE
|
||||
eKart.powerMode = incomeData.separate.byte0;
|
||||
if (eKart.powerMode == 0) {
|
||||
CM_HEADLIGHTS(&ALWAYSFALSE);
|
||||
// CM_HEADLIGHTS(&ALWAYSFALSE);
|
||||
CM_HEADLIGHTS(&ALWAYSTRUE);
|
||||
} else {
|
||||
CM_HEADLIGHTS(&ALWAYSTRUE);
|
||||
}
|
||||
@ -305,6 +306,10 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, bool rtr, uint32_t data){
|
||||
* SUPPLY *
|
||||
**********/
|
||||
case 6:
|
||||
if(idMsg == 0x1) {
|
||||
eKart.batteryVoltage = incomeData.full;
|
||||
}
|
||||
|
||||
if(idMsg == 0x4) {
|
||||
DRIVE_startBehaviour(drive());
|
||||
STEERING_startBehaviour(steering());
|
||||
|
@ -87,20 +87,8 @@ typedef struct {
|
||||
bool button;
|
||||
uint8_t speed; // 100m/h
|
||||
bool brake;
|
||||
uint8_t powerMode; // 0: eco - 1: normal - 2: race
|
||||
/*
|
||||
* 0 - ECO MODE
|
||||
* Eco mod limit to 1/2 of the maximal current.
|
||||
* Position is 1/2 of the maximal angle
|
||||
*
|
||||
* 1 - NORMAL MODE
|
||||
* Standard ramp for normal mode
|
||||
* Position is limited to 3/4 of the maximal
|
||||
*
|
||||
* 2 - RACE MODE
|
||||
*
|
||||
*
|
||||
*/
|
||||
uint8_t powerMode;
|
||||
uint16_t batteryVoltage;
|
||||
} KART_VAR_TYPE;
|
||||
KART_VAR_TYPE eKart;
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/**
|
||||
* @author Rémi Heredero
|
||||
* @author R<EFBFBD>mi Heredero
|
||||
* @version. 0.0.0
|
||||
* @date August 2023
|
||||
* @file kartculator.c
|
||||
@ -242,6 +242,11 @@ void calcTorque(uint8_t joy_pos) {
|
||||
calcTorque *= 1150;
|
||||
calcTorque /= 1000;
|
||||
}
|
||||
|
||||
if(eKart.batteryVoltage <= 18750) {
|
||||
calcTorque = 0;
|
||||
}
|
||||
|
||||
eKart.torque = (int16_t) calcTorque;
|
||||
}
|
||||
|
||||
|
@ -124,8 +124,8 @@ void ECAN_Initialize(void)
|
||||
// filter 1 is message for controller
|
||||
convertCANid2Reg(0x010, dSTANDARD_CAN_MSG_ID_2_0B, &RXF1EIDH, &RXF1EIDL, &RXF1SIDH, &RXF1SIDL);
|
||||
|
||||
// filter 2 is message for recipient n°7, not yet defined
|
||||
convertCANid2Reg(0x070, dSTANDARD_CAN_MSG_ID_2_0B, &RXF2EIDH, &RXF2EIDL, &RXF2SIDH, &RXF2SIDL);
|
||||
// filter 2 is message for display (yes i want the message from the display)
|
||||
convertCANid2Reg(0x060, dSTANDARD_CAN_MSG_ID_2_0B, &RXF2EIDH, &RXF2EIDL, &RXF2SIDH, &RXF2SIDL);
|
||||
|
||||
/*
|
||||
* ENABLE FILTERS
|
||||
|
@ -454,7 +454,7 @@ endif
|
||||
# Enable dependency checking
|
||||
.dep.inc: .depcheck-impl
|
||||
|
||||
DEPFILES=$(wildcard ${POSSIBLE_DEPFILES})
|
||||
DEPFILES=$(shell mplabwildcard ${POSSIBLE_DEPFILES})
|
||||
ifneq (${DEPFILES},)
|
||||
include ${DEPFILES}
|
||||
endif
|
||||
|
@ -15,11 +15,11 @@
|
||||
# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ...
|
||||
#
|
||||
SHELL=cmd.exe
|
||||
PATH_TO_IDE_BIN=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/
|
||||
PATH_TO_IDE_BIN=C:/Program Files/Microchip/MPLABX/v6.05/mplab_platform/platform/../mplab_ide/modules/../../bin/
|
||||
# Adding MPLAB X bin directory to path.
|
||||
PATH:=C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH)
|
||||
PATH:=C:/Program Files/Microchip/MPLABX/v6.05/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH)
|
||||
# Path to java used to run MPLAB X when this makefile was created
|
||||
MP_JAVA_PATH="C:\Program Files\Microchip\MPLABX\v6.15\sys\java\zulu8.64.0.19-ca-fx-jre8.0.345-win_x64/bin/"
|
||||
MP_JAVA_PATH="C:\Program Files\Microchip\MPLABX\v6.05\sys\java\zulu8.64.0.19-ca-fx-jre8.0.345-win_x64/bin/"
|
||||
OS_CURRENT="$(shell uname -s)"
|
||||
MP_CC="C:\Program Files\Microchip\xc8\v2.41\bin\xc8-cc.exe"
|
||||
# MP_CPPC is not defined
|
||||
@ -27,11 +27,11 @@ MP_CC="C:\Program Files\Microchip\xc8\v2.41\bin\xc8-cc.exe"
|
||||
MP_AS="C:\Program Files\Microchip\xc8\v2.41\bin\xc8-cc.exe"
|
||||
MP_LD="C:\Program Files\Microchip\xc8\v2.41\bin\xc8-cc.exe"
|
||||
MP_AR="C:\Program Files\Microchip\xc8\v2.41\bin\xc8-ar.exe"
|
||||
DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files/Microchip/MPLABX/v6.15/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar"
|
||||
DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files/Microchip/MPLABX/v6.05/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar"
|
||||
MP_CC_DIR="C:\Program Files\Microchip\xc8\v2.41\bin"
|
||||
# MP_CPPC_DIR is not defined
|
||||
# MP_BC_DIR is not defined
|
||||
MP_AS_DIR="C:\Program Files\Microchip\xc8\v2.41\bin"
|
||||
MP_LD_DIR="C:\Program Files\Microchip\xc8\v2.41\bin"
|
||||
MP_AR_DIR="C:\Program Files\Microchip\xc8\v2.41\bin"
|
||||
DFP_DIR=C:/Program Files/Microchip/MPLABX/v6.15/packs/Microchip/PIC18F-K_DFP/1.11.281
|
||||
DFP_DIR=C:/Users/remi/.mchp_packs/Microchip/PIC18F-K_DFP/1.11.281
|
||||
|
25
UML/full_sequence.puml
Normal file
25
UML/full_sequence.puml
Normal file
@ -0,0 +1,25 @@
|
||||
@startuml
|
||||
'https://plantuml.com/sequence-diagram
|
||||
|
||||
actor User as usr
|
||||
participant can_message as can
|
||||
control kartculator as kc
|
||||
queue XF as xf
|
||||
entity Drive as drive
|
||||
entity Steering as steering
|
||||
|
||||
usr -\ xf : set message "move"
|
||||
xf -> can : new value on joystick
|
||||
|
||||
== If X axis change value ==
|
||||
can -> kc : calculate new position
|
||||
kc -> can : build message
|
||||
can -> steering : set new position
|
||||
|
||||
== If Y axis change value ==
|
||||
can -> kc : calculate new torque
|
||||
kc -> can : build message
|
||||
can -> xf : set message "torque"
|
||||
xf -> drive : set new torque
|
||||
|
||||
@enduml
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
BIN
UML/pdf-png/cas de test.pdf
Normal file
BIN
UML/pdf-png/cas de test.pdf
Normal file
Binary file not shown.
BIN
UML/pdf-png/full_sequence.png
Normal file
BIN
UML/pdf-png/full_sequence.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 29 KiB |
BIN
UML/pdf-png/session de test.pdf
Normal file
BIN
UML/pdf-png/session de test.pdf
Normal file
Binary file not shown.
BIN
UML/pdf-png/steering.pdf
Normal file
BIN
UML/pdf-png/steering.pdf
Normal file
Binary file not shown.
@ -1,74 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<diagram program="umlet" version="15.0.0">
|
||||
<zoom_level>15</zoom_level>
|
||||
<element>
|
||||
<id>UMLSpecialState</id>
|
||||
<coordinates>
|
||||
<x>315</x>
|
||||
<y>270</y>
|
||||
<w>30</w>
|
||||
<h>30</h>
|
||||
</coordinates>
|
||||
<panel_attributes>type=initial</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>315</x>
|
||||
<y>285</y>
|
||||
<w>120</w>
|
||||
<h>105</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=->
|
||||
evWDinit</panel_attributes>
|
||||
<additional_attributes>10.0;10.0;10.0;50.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLState</id>
|
||||
<coordinates>
|
||||
<x>255</x>
|
||||
<y>360</y>
|
||||
<w>150</w>
|
||||
<h>60</h>
|
||||
</coordinates>
|
||||
<panel_attributes>STWD_ALIVE</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>180</x>
|
||||
<y>375</y>
|
||||
<w>270</w>
|
||||
<h>135</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=->
|
||||
m1=evWDpoll</panel_attributes>
|
||||
<additional_attributes>100.0;30.0;100.0;70.0;10.0;70.0;10.0;10.0;50.0;10.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLNote</id>
|
||||
<coordinates>
|
||||
<x>480</x>
|
||||
<y>360</y>
|
||||
<w>150</w>
|
||||
<h>60</h>
|
||||
</coordinates>
|
||||
<panel_attributes>send alive
|
||||
by CAN</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLNote</id>
|
||||
<coordinates>
|
||||
<x>375</x>
|
||||
<y>225</y>
|
||||
<w>150</w>
|
||||
<h>60</h>
|
||||
</coordinates>
|
||||
<panel_attributes>read time on
|
||||
EPROM</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
</diagram>
|
@ -326,8 +326,8 @@
|
||||
<CAN_Signal_Watch>
|
||||
<Message>
|
||||
<Id>529</Id>
|
||||
<Signal>posX</Signal>
|
||||
<Signal>posY</Signal>
|
||||
<Signal>posX</Signal>
|
||||
</Message>
|
||||
<Message>
|
||||
<Id>1040</Id>
|
||||
@ -345,8 +345,14 @@
|
||||
<Id>337</Id>
|
||||
<Signal>SteeringPosition</Signal>
|
||||
</Message>
|
||||
<Message>
|
||||
<Id>1585</Id>
|
||||
<Signal>BatteryVoltage</Signal>
|
||||
</Message>
|
||||
<Message>
|
||||
<Id>1311</Id>
|
||||
<Signal>STAT_HOMING_ATTAINED</Signal>
|
||||
<Signal>STAT_HOMING_ERROR</Signal>
|
||||
</Message>
|
||||
<Message>
|
||||
<Id>1294</Id>
|
||||
@ -360,18 +366,18 @@
|
||||
<Signal>headlights</Signal>
|
||||
</Message>
|
||||
<Window_Position>
|
||||
<Visibility>SHOWNORMAL</Visibility>
|
||||
<Visibility>SHOWMINIMIZED</Visibility>
|
||||
<WindowPlacement>HIDE</WindowPlacement>
|
||||
<Top>186</Top>
|
||||
<Left>513</Left>
|
||||
<Right>960</Right>
|
||||
<Bottom>747</Bottom>
|
||||
<Top>161</Top>
|
||||
<Left>610</Left>
|
||||
<Right>1057</Right>
|
||||
<Bottom>722</Bottom>
|
||||
</Window_Position>
|
||||
<COLUMN_WIDTH>
|
||||
<MESSAGE_COLUMN>86</MESSAGE_COLUMN>
|
||||
<Raw_Val_Column>86</Raw_Val_Column>
|
||||
<Physical_Val_Column>172</Physical_Val_Column>
|
||||
<Signal_Column>86</Signal_Column>
|
||||
<MESSAGE_COLUMN>0</MESSAGE_COLUMN>
|
||||
<Raw_Val_Column>0</Raw_Val_Column>
|
||||
<Physical_Val_Column>0</Physical_Val_Column>
|
||||
<Signal_Column>0</Signal_Column>
|
||||
</COLUMN_WIDTH>
|
||||
</CAN_Signal_Watch>
|
||||
<J1939_Signal_Watch>
|
||||
@ -417,17 +423,17 @@
|
||||
<Axis_Color>255</Axis_Color>
|
||||
<X_Grid_Lines>10</X_Grid_Lines>
|
||||
<Y_Grid_Lines>5</Y_Grid_Lines>
|
||||
<Active_Axis>2</Active_Axis>
|
||||
<Active_Axis>1</Active_Axis>
|
||||
<Selected_Action>0</Selected_Action>
|
||||
<Show_Grid>TRUE</Show_Grid>
|
||||
<Display_Type>NORMAL</Display_Type>
|
||||
</GRAPH_PARAMETERS>
|
||||
<GRAPH_ELEMENT>
|
||||
<Message_ID>1586</Message_ID>
|
||||
<Message_Name>DISPLAY_CURRENT</Message_Name>
|
||||
<Message_ID>1585</Message_ID>
|
||||
<Message_Name>DISPLAY_VOLTAGE</Message_Name>
|
||||
<Frame_Format/>
|
||||
<Element_Name>BatteryCurrent</Element_Name>
|
||||
<Value_Type>Physical</Value_Type>
|
||||
<Element_Name>BatteryVoltage</Element_Name>
|
||||
<Value_Type>Raw</Value_Type>
|
||||
<Line_Type>SOLID</Line_Type>
|
||||
<Line_Color>65280</Line_Color>
|
||||
<Point_Type>2</Point_Type>
|
||||
@ -439,10 +445,10 @@
|
||||
<Window_Position>
|
||||
<Visibility>SHOWNORMAL</Visibility>
|
||||
<Window_Position>HIDE</Window_Position>
|
||||
<Top>39</Top>
|
||||
<Left>74</Left>
|
||||
<Bottom>586</Bottom>
|
||||
<Right>1399</Right>
|
||||
<Top>11</Top>
|
||||
<Left>290</Left>
|
||||
<Bottom>558</Bottom>
|
||||
<Right>1615</Right>
|
||||
</Window_Position>
|
||||
<Splitter_Window_Col_0>
|
||||
<CxIdeal>479</CxIdeal>
|
||||
@ -569,10 +575,10 @@
|
||||
<Interpretation_Window_Position>
|
||||
<Visibility>SHOWNORMAL</Visibility>
|
||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||
<Top>181</Top>
|
||||
<Left>12</Left>
|
||||
<Bottom>459</Bottom>
|
||||
<Right>361</Right>
|
||||
<Top>179</Top>
|
||||
<Left>10</Left>
|
||||
<Bottom>457</Bottom>
|
||||
<Right>359</Right>
|
||||
</Interpretation_Window_Position>
|
||||
</CAN_Message_Window>
|
||||
<J1939_Message_Window>
|
||||
@ -669,10 +675,10 @@
|
||||
<Interpretation_Window_Position>
|
||||
<Visibility>SHOWNORMAL</Visibility>
|
||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||
<Top>181</Top>
|
||||
<Left>12</Left>
|
||||
<Bottom>459</Bottom>
|
||||
<Right>361</Right>
|
||||
<Top>179</Top>
|
||||
<Left>10</Left>
|
||||
<Bottom>457</Bottom>
|
||||
<Right>359</Right>
|
||||
</Interpretation_Window_Position>
|
||||
</J1939_Message_Window>
|
||||
<LIN_Message_Window>
|
||||
@ -754,20 +760,20 @@
|
||||
<Interpretation_Window_Position>
|
||||
<Visibility>SHOWNORMAL</Visibility>
|
||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||
<Top>181</Top>
|
||||
<Left>12</Left>
|
||||
<Bottom>459</Bottom>
|
||||
<Right>361</Right>
|
||||
<Top>179</Top>
|
||||
<Left>10</Left>
|
||||
<Bottom>457</Bottom>
|
||||
<Right>359</Right>
|
||||
</Interpretation_Window_Position>
|
||||
</LIN_Message_Window>
|
||||
<CAN_Tx_Window>
|
||||
<Window_Position>
|
||||
<Visibility>SHOWNORMAL</Visibility>
|
||||
<WindowPlacement>SETMINPOSITION</WindowPlacement>
|
||||
<Top>4</Top>
|
||||
<Left>648</Left>
|
||||
<Bottom>659</Bottom>
|
||||
<Right>1508</Right>
|
||||
<Top>-1</Top>
|
||||
<Left>1035</Left>
|
||||
<Bottom>654</Bottom>
|
||||
<Right>1895</Right>
|
||||
</Window_Position>
|
||||
<Message_List>
|
||||
<Message>
|
||||
|
Reference in New Issue
Block a user