Subversion Repositories HomeAutomation

Rev

Rev 1361 | Blame | Compare with Previous | Last modification | View Log | SVN | RSS feed

  1.  
  2. function power(type, name, id)
  3. {
  4.     this.CanService(type, name, id);
  5.    
  6.     this.myLastValue = new Array();
  7. }
  8.  
  9. extend(power, CanService);
  10.  
  11. power.prototype.myReportInterval = null;
  12. power.prototype.myLastValuePower = null;
  13. power.prototype.myLastValuePower4 = null;
  14. power.prototype.myLastValuePower32 = null;
  15. power.prototype.myLastValueEngergy = null;
  16.  
  17. power.prototype.canMessageHandler = function(canMessage)
  18. {
  19.     if (canMessage.getDirectionFlag() == "From_Owner")
  20.     {
  21.         switch (canMessage.getCommandName())
  22.         {
  23.         case "ElectricPower":
  24.         //log(this.myName + ":" + this.myId + "> New value: " + canMessage.getData("Value") + "\n");
  25.         this.myLastValuePower = canMessage.getData("Power");
  26.         this.myLastValuePower32 = canMessage.getData("Power32");
  27.         this.myLastValueEnergy = canMessage.getData("EnergySum");
  28.         this.callEvent("newValue");
  29. //      var content = canMessage.getData("Power32")+"\n";
  30. //      var filename = "/dev/shm/can/"+this.myName + "_" + this.myId+"_Power32";
  31. //      setFileContents(filename, content);
  32. //      content = canMessage.getData("Power")+"\n";
  33. //      filename = "/dev/shm/can/"+this.myName + "_" + this.myId+"_Power";
  34. //      setFileContents(filename, content);
  35. //      content = canMessage.getData("EnergySum")+"\n";
  36. //      filename = "/dev/shm/can/"+this.myName + "_" + this.myId+"_EnergySum";
  37. //      setFileContents(filename, content);                                                                                                                                        
  38.         break;
  39.        
  40.         case "Report_Interval":
  41.         log(this.myName + ":" + this.myId + "> New report interval: " + canMessage.getData("Time") + "\n");
  42.         this.myReportInterval = canMessage.getData("Time");
  43.         break;
  44.        
  45.         case "setEnergy":
  46.         log(this.myName + ":" + this.myId + "> New energy stored: " + canMessage.getData("Energy") + "\n");
  47.         break;
  48.         }
  49.     }
  50.    
  51.     this.CanService.prototype.canMessageHandler.call(this, canMessage);
  52. }
  53.  
  54. power.prototype.getPower = function()
  55. {
  56.     return this.myLastValuePower;
  57. }
  58.  
  59. power.prototype.getPower32 = function()
  60. {
  61.     return this.myLastValuePower32;
  62. }
  63. power.prototype.getEnergy = function()
  64. {
  65.     return this.myLastValueEnergy;
  66. }
  67. power.prototype.setEnergy = function(energy)
  68. {
  69.     var canMessage = new CanMessage("sns", "To_Owner", this.myName, this.myId, "setEnergy");
  70.     canMessage.setData("Energy", energy);
  71.     sendMessage(canMessage);
  72. }
  73.  
  74. power.prototype.setReportInterval = function(time)
  75. {
  76.     var canMessage = new CanMessage("sns", "To_Owner", this.myName, this.myId, "Report_Interval");
  77.     canMessage.setData("Time", time);
  78.     sendMessage(canMessage);
  79. }
  80.