Hi Kiranpatel,
I'm reasonably familiar with CANopen, and have both written a stack and designed a number of CANopen based devices and products. There's a pretty steep learning curve with CANopen, but a good feature of the protocol is that you can pick-and-choose what parts of it to implement for your application. In my opinion, for many simple applications, you really just need to sort of fake the CANopen protocol to get your device to operate on the network. That said, you will still need to become familiar enough with the protocol to understand its scope and know what parts of it to implement.
If you go ahead with your project, and have any generic questions, post them on here and maybe I or others can help you. I won't be able to help you with the specifics of canopennode though: I had a serious look at it a few years ago before I decided to roll my own.
Frank