You will need to prefix your $Output and $CPUPercent variables inside the script block with Using: to tell the PowerShell engine to inject the value. I am assuming you are running PowerShell v3 or later.
P.S.:
You will run into another problem with your script. At the end of the pipeline in your Invoke-Command you are formatting a table and writing it to a file. The whole script block including those commands will be executed on the remote servers. Meaning the Result.txt will not be created or appended on your Admin workstation/server. The file will get created on each remote server which you probably do not want.