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<>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