Changeset 1804 for trunk/MagicSoft/Cosy/devdrv
- Timestamp:
- 03/02/03 17:08:13 (22 years ago)
- Location:
- trunk/MagicSoft/Cosy/devdrv
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/MagicSoft/Cosy/devdrv/macs.cc
r1758 r1804 31 31 : NodeDrv(nodeid, name, out), fMacId(2*nodeid+1), 32 32 fPos(0), fPosTime(0.0), fPdoPos(0), fPdoTime(0.0), 33 fPosActive(0), fRpmActive(0) 33 fPosActive(0), fRpmActive(0), fStatusPdo3(0xff) 34 34 { 35 35 // fTimeout = new TTimer(this, 100); //, kFALSE); // 100ms, asynchronous … … 57 57 58 58 case 0x2002: 59 cout << GetNodeName() << ": Actualvelocity: " << dec << val << endl;59 cout << GetNodeName() << ": Current velocity: " << dec << val << endl; 60 60 fVel = val; 61 61 return; … … 273 273 SetNoWait(TRUE); 274 274 275 StartGuarding(100, 2);276 StartHostGuarding();275 // StartGuarding(500, 2); 276 // StartHostGuarding(); 277 277 } 278 278 … … 300 300 SetPDO1On(FALSE); 301 301 302 lout << "- " << GetNodeName() << ": Motor off." << endl; 303 SendSDO(0x3000, string('o', 'f', 'f')); 304 WaitForSdo(0x3000); 302 /* 303 lout << "- " << GetNodeName() << ": Motor off." << endl; 304 SendSDO(0x3000, string('o', 'f', 'f')); 305 WaitForSdo(0x3000); 306 */ 305 307 306 308 /* … … 550 552 } 551 553 554 void Macs::HandlePDO3(BYTE_t *data, timeval_t *tv) 555 { 556 // 3 5 7 9 557 // 1100 1010 1110 1001 558 if (fStatusPdo3 == data[3]) 559 return; 560 561 lout << GetNodeName() << ": Status PDO3 = "; 562 const Bool_t ready = data[3]&0x01; 563 const Bool_t fuse = data[3]&0x02; 564 const Bool_t emcy = data[3]&0x04; 565 const Bool_t vltg = data[3]&0x08; 566 const Bool_t mode = data[3]&0x10; 567 const Bool_t rf = data[3]&0x20; 568 const Bool_t brake = data[3]&0x40; 569 if (ready) lout << "DKC-Ready "; 570 if (fuse) lout << "FuseOk "; 571 if (emcy) lout << "EmcyOk "; 572 if (vltg) lout << "OvervoltOk "; 573 if (mode) lout << "SwitchToManualMode "; 574 if (rf) lout << "RF "; 575 if (brake) lout << "BrakeOpen "; 576 lout << endl; 577 578 fStatusPdo3 = data[3]; 579 } 580 552 581 // FIXME? Handling of fIsZombie? 553 582 void Macs::HandleError() -
trunk/MagicSoft/Cosy/devdrv/macs.h
r1727 r1804 28 28 BYTE_t fStatus; 29 29 30 LWORD_t string(BYTE_t b0=0, BYTE_t b1=0, BYTE_t b2=0, BYTE_t b3=0) 31 { 32 return (LWORD_t)(b0<<24 | b1<<16 | b2<<8 | b3); 33 } 30 BYTE_t fStatusPdo3; 34 31 35 32 void Init(); … … 42 39 void HandlePDO1(BYTE_t *data, timeval_t *tv); 43 40 void HandlePDO2(BYTE_t *data, timeval_t *tv); 41 void HandlePDO3(BYTE_t *data, timeval_t *tv); 44 42 //void HandleNodeguard(timeval_t *tv); 45 43 … … 67 65 Macs(const BYTE_t nodeid, const char *name=NULL, MLog &out=gLog); 68 66 virtual ~Macs(); 67 68 static LWORD_t string(BYTE_t b0=0, BYTE_t b1=0, BYTE_t b2=0, BYTE_t b3=0) 69 { 70 return (LWORD_t)(b0<<24 | b1<<16 | b2<<8 | b3); 71 } 69 72 70 73 void SendMsg(BYTE_t data[6]); -
trunk/MagicSoft/Cosy/devdrv/shaftencoder.cc
r1758 r1804 252 252 253 253 // 254 // Request Lifetimefactor for unknown reason to make guarding 255 // working in SE/Az... (FIXME) 256 // 257 // lout << "- " << GetNodeName() << ": Requesting Lifetimefactor (Workaround, FIXME!) (SDO 0x100d)." << endl; 258 // RequestSDO(0x100c); 259 // WaitForSdo(0x100c); 260 // RequestSDO(0x100d); 261 // WaitForSdo(0x100d); 262 263 // 254 264 // Set logic ticks/revolution = physical ticks/revolution => scale factor = 1 255 265 // … … 291 301 SendNMT(kNMT_START); 292 302 293 StartGuarding(175, 2); 303 /* 304 cout << "---1---" << endl; 305 MTimeout t(1000); 306 while (!t.HasTimedOut()) 307 usleep(1); 308 cout << "---2---" << endl; 309 */ 310 311 // StartGuarding(175, 2); // 175 312 // StartGuarding(10*GetId(), 2); // 175 294 313 } 295 314
Note:
See TracChangeset
for help on using the changeset viewer.