I would like design a CANbus system to control some sensors and motors, but I am not familiar with CAN.
So far I know I will use CANopen protocol, and if I choose to use a FPGA chip I can use VHDL to programme it, if I use a microchip I can use C/C++ to programme it.
I am wondering if anything else I need to know or prepare, such CAN driver chip, CAN interface, some kind of sofware....and so on.
you need CAN transceivers chips that will interface you microcontroller with CAN BUS.. You may also need CANoe simulator ( its very costly only if needed by you) to check the CAN messages.